2011-11-11 4 views
1

Google Checkout을 사이트와 통합하여 잘 작동하고/괜찮은 사람에게 요금을 청구하고 잘 주문 알림을 처리하는 것처럼 보이게했습니다.PHP Google Checkout 알림 - 알림 요청을 전송하는 코드 샘플?

그러나 알림의 세부 정보를 얻기 위해 Google에 다시 요청하면 유효하지 않은 XML에 대한 400 응답이 표시됩니다.

이 통합을위한 모든 것이 지금까지 HTML 키 값 쌍 이었지만 갑자기 XML을 구문 분석하고 처리해야합니까? 나는 뭔가를 놓칠지도 모른다. 그러나 나는 문서에서 그것이 나의 요청이 어떻게 보일 것 인지를 나에게 정확하게 알려주는 곳을 볼 수 없다.

는 여기를 참조하십시오 : http://code.google.com/apis/checkout/developer/Google_Checkout_HTML_API_Notification_API.html#Receiving_and_Processing_Notifications

그것은 명확하게 이름/값 쌍의 예를 나열 아직 분명히 실제로 XML로 보낼 필요가? 내가 지금의 위치를 ​​여기

가있다 : -

<?php $header_arr = array("Authorization: Basic ".$authKey, 
        "Content-Type: application/xml; charset=UTF-8", 
      "Accept: application/xml; charset=UTF-8"); 

$request='type=notification-history-request&serial-number='.$serialNumber; 

$ch = curl_init($test_URL);  
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $header_arr); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $request); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
$body = curl_exec($ch); 

if (curl_errno($ch)) { 
    $log.=', error! :'.curl_error($ch); 
} else { 
    $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
    $log.=', status code is: '.$status_code; //400 
} 
?> 

이 400마다 반환 문서가 여기에 지정으로 예 나는 내가이 XML에 대한 헤더를 받아 설정하고있어 실현이는 다음과 같습니다 http://code.google.com/apis/checkout/developer/Google_Checkout_HTML_API.html#https_auth_scheme

그래서 올바른 요청을 보내야한다고 생각합니다. 아이디어가 있습니까?

추신 : 나는 또한 Google의 샘플 코드를 통해 확인해 보았습니다.하지만 너무 계층적이고 의존성이있어 일부는 사용할 수 있었지만 나머지는 미스테리입니다. 그래서 줄 번호를 줄 수 없다면 샘플이별로 도움이되지 않습니다

답변

1

확인이 정말 간단했다.

내가 잘못 PARAM 이름을했다 - '유형 것은'과 같이 '_type'있었어야 :

$request='_type=notification-history-request&serial-number='.$serialNumber; 

나는 내가 지금 필요로하는 응답을 받고 있어요, 공포는 피할 :)

+0

어떤이의 통지 이력을 수신하는 올바른 프로세스? 콜백 URL에서이 요청을합니까? (나는 5 분이 지난 주문에 관한 내용을 읽었으므로 혼란이 일어났습니다.) – Ozzy

+0

좋은 질문이 있습니다. 미안하지만 내가 이것을 구현 한 이후로 오랜 시간이 걸렸다. 내가 기억하는 한 내가 뭘했는지는 Google의 멍에에 대한 응답이었습니다. 그들은 지불/주문 알림을 귀하의 사이트로 보내고 요청을 반환하고 더 많은 데이터를 요구할 것입니다. 따라서 알림을 보내면 사용할 수있는 데이터가있는 것입니다. 희망은 도움이됩니다. – jammypeach