0
ajax get 요청에 oauth api 토큰 세부 정보를 사용하고 싶지만 권한이 부여되지 않은 401 오류가 발생합니다. 내가 php 파일 내 자격 증명을 확인했지만 그것을 사용하여 아약스 요청을 실행할 수 없습니다.ajax 요청 내에서 oauth 토큰을 사용하는 Bigcommerce API 호출
Bigcommerce oauth 로그인에 대한 ajax 요청 내에서 헤더를 전달하는 방법에 대해 고민하고 있습니다. API의 URL : https://api.bigcommerce.com/stores/ {매장 해시}/V3/카탈로그/카테고리
내 작업 PHP 코드 :
$headers = array(
"Accept: application/json",
"X-Auth-Client:".$client_id,
"X-Auth-Token:".$auth_token
);
$chbig = curl_init($api_url);
curl_setopt($chbig, CURLOPT_TIMEOUT, 60);
curl_setopt($chbig, CURLOPT_HTTPHEADER, $headers);
curl_setopt($chbig, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($chbig, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($chbig, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($chbig); //execute post
$http_status = (string) curl_getinfo($chbig, CURLINFO_HTTP_CODE);
curl_close($chbig);
echo "<pre>";
print_r($http_status);
print_r($result);
작동하지 JS 코드 :
$.ajax({
url: api_url,
headers: {
"X-Auth-Client" : client_id,
"X-Auth-Token" : auth_token ,
'Accept':'application/json',
},
dataType: 'jsonp',
type: "GET",
success: function() { alert('Success!'); }
});
을 찾아 도와주세요 솔루션 ...
ajax에 의해 생성 된 요청이 cURL에 의해 생성 된 요청과 동일하게 보이는지 (정확하게 동일한 헤더, 내용 등)? Fiddler와 같은 도구를 사용하여 비교할 수 있습니다. – ADyson
아니요. 아약스 요청을 통과 한 요청 헤더가 없습니다. –
"application/json 수락"및 "dataType : jsonp"는 서로 모순되고 충돌합니다. 제 생각에는 당신이 jsonp 비트를 제거해야한다고 생각합니다. cURL 요청에는 아무 것도 없지만 JSON을 기대하고 있다면 JSONP 콜백이 필요하지 않습니다. 같은 것이 아닙니다. – ADyson