2012-07-06 4 views
2

좀 더 구체적으로 말하면 커미션 분기점 (http://help.cj.com/en/web_services/web_services.htm#Commission_Detail_Service.htm)의 웹 서비스를 살펴보고 인증 키가 요청의 "헤더"에 포함되어 있다고 가정합니다.REST API 호출을 할 때 GET 요청과 같이 URL에 Authorization 키를 포함 할 수 있습니까?

그냥 URL로 요청을 보낼 수 있습니까? 예를 들어 (웹 사이트의 URI 사용) : https://publisher-lookup.api.cj.com/v2/joined-publisher-lookup? 권한 = [현상 키] & 누구 펜타 데이터 통합 ​​V4.3 (PDI 또는 케틀)에 익숙한 경우 = HTTP % 3A % 2F % 2Fwww.cj.com가

또한,이 API을 도와 URL PDI를 사용하여 전화를 걸면 대단히 감사하게 될 것입니다 (궁극적으로 내가 성취하려고 시도한 것입니다).

감사합니다.

+0

왜 요청 헤더에 넣고 싶지 않지만 URL에 넣으시겠습니까? –

+0

데이터 통합 ​​도구 인 Pentaho Data Integration을 사용하고 있는데, REST 호출을위한 변환 단계에 헤더에 사용할 수있는 필드가 없다고 생각했습니다. 나는 그것이 단지 발견했다. 그러나 URL을 통해 REST 요청을 보낼 수 있는지 여부는 여전히 알고 있습니다. – Marina

+2

그것은 서버 구현에 따라 다르며 쿼리 매개 변수로 전달할 수 있습니다. 그러나 그것이 작동하는지 의심 스럽지만'Authorization' 필드는 표준 HTTP 헤더 필드이며 쿼리 매개 변수와 다르게 처리됩니다. –

답변

0

커미션 분기점에 100 % 의존합니다. 이는 한 곳에서 또는 다른 곳에서 키를 기대하기 때문입니다. 그것들은 URL에 전달할 수단을 허용했을 수도 있지만 그렇지 않을 수도 있습니다. 그러나이를 결정하는 측면에서의 구현이므로 자신의 문서에 있어야합니다. Is는 REST 패턴을 무효화하지 않습니다.

어쨌든 머리말에 매개 변수를 전달하는 방법을 찾은 것처럼 들리므로 소리를 이동하는 것이 좋습니다.

파이어 폭스
0

당신은 HTTP 헤더로 개발자 키를 전송한다 . 다음은 PHP의 commissionjunction (CJ) 코드 예제입니다.

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "https://commission-detail.api.cj.com/v3/commissions?date-type=posting&start-date=" . date('Y-m-d', (time()-(24*3600))) . "&end-date=" . date('Y-m-d')); 
curl_setopt($ch, CURLOPT_HEADER, false); 
curl_setopt($ch, CURLOPT_GET, true); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array("authorization: " . $yourdeveloperkey)); 
$result = curl_exec($ch); 
curl_close($ch); 
print_r($result);