When the admin is being viewed as HTTPS but the site is HTTP, the browser is unable to access the API.  Had the same issue with my logging plugin: https://github.com/petenelson/wp-rest-api-log/commit/9779f7989b13aaf43f0cd5f47097a18c8623f46f