Я пытаюсь реализовать логин с помощью сателлитера для твиттера.
Я следую за примерами в хранилище сателлитеров, поэтому на стороне клиента я делаю следующее:
$auth.authenticate('twitter')
.then(function (res) {
console.log(res);
});
И на стороне сервера я слежу за их входом в систему для oauth 1.0:
Client: Open a popup window via $auth.authenticate('provider name').
Client: Unlike OAuth 2.0, you cannot go directly to the authentication screen without a valid request token.
Client: The OAuth 1.0 flow starts with the GET request to /auth/provider inside the popup.
Server: Check if URL contains oauth_token and oauth_verifier parameters.
Sever: Initially it does not, so send an OAuth signed POST request to the /request_token URL.
Server: Redirect to the /authenticate URL with a valid request token.
Но когда я получаю перенаправление на URL-адрес / authenticate, я получаю сообщение об ошибке CORS:
No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin is therefore not allowed access.
Я посмотрел на их примере для php / Laravel, и они используют редирект, но для меня это не работает.
Как я могу решить эту проблему?
Вам необходимо добавить заголовок Access-Control-Allow-Origin в ваш файл index.php.
В серверной части откройте index.php и добавьте эту строку после <?php
:
header("Access-Control-Allow-Origin: *");
Других решений пока нет …