Mailchimp аутентификация, показывающая Access-Control-Allow-Origin - PullRequest
1 голос
/ 27 мая 2019

При интеграции с mailchimp я выполняю аутентификацию после получения access_token, а затем отправляю запрос на получение метаданных и сталкивается с проблемой.

После синхронизации имени пользователя и пароля я получаю access_token и получаю сообщение об ошибкеэтот код:

var AccessToken = '<?php //echo $_GET['access_token']; ?>'
jQuery.ajax( {
    url: "https://login.mailchimp.com/oauth2/metadata",
    type: 'GET',
    beforeSend : function( xhr ) {
        xhr.setRequestHeader( 'Authorization', 'OAuth ' +      
        AccessToken );
    },
    success: function( response ) {
        console.log(response);
    },
    error : function(error) {
        console.log(error);
    }
} );

Я также пытался из curl как:

public function list()
{
  $url = 'https://login.mailchimp.com/oauth2/token';
  $data = [
    'grant_type' => 'authorization_code',
    'client_id' => 345555555555555555555555,
    'client_secret' => '4b0xxxxxxxxxxxxxxxxxxxxx5406a7d',
    'redirect_uri' => 'http://127.0.0.1:8000/success',
    'code' => $_GET['code']
    ];
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL, $url);
 curl_setopt($ch, CURLOPT_POST, 1);
 curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 $response = curl_exec ($ch);
 $err = curl_error($ch);  //if you need
 curl_close ($ch);
 return $response;
     }
Access to XMLHttpRequest at 'https://login.mailchimp.com/oauth2/metadata' from origin 'http://127.0.0.1:8000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Cross-Origin Read Blocking (CORB) blocked cross-origin response https://login.mailchimp.com/oauth2/metadata with MIME type application/json. See https://www.chromestatus.com/feature/5629709824032768 for more details.
send @ jquery.min.js:2
ajax @ jquery.min.js:2
(anonymous) @ list:74

1 Ответ

0 голосов
/ 27 мая 2019

Ошибка в вашем запросе гласит, что CORB ,

Блокировка чтения из разных источников, более известная как CORB, является алгоритмом какие сомнительные выборки ресурсов из разных источников идентифицированы и заблокированы прежде чем они достигнут веб-страницы. CORB снижает риск утечки конфиденциальные данные, сохраняя их дальше от веб-страниц перекрестного происхождения. В в большинстве браузеров такие данные не допускаются к выполнению ненадежных скриптов. контексты. В браузерах с изоляцией сайтов такие данные могут храниться вне ненадежных процессов рендерера полностью, помогая даже против стороны канальные атаки.

Поскольку вы делаете запрос от локального хоста, он считается сомнительным источником, в результате чего он блокируется.

...