2013-08-05 63 views
2

我遇到問題,試圖通過跟蹤號唯一標識符跟蹤包。我正在使用來自Fedex開發人員資源中心的示例PHP代碼。 如何使用TrackingNumberUniqueIdentifier來追蹤它?跟蹤號碼唯一標識符如何跟蹤?

$path_to_wsdl = __DIR__ . "/WSDL/FEDEX/TrackService_v6.wsdl"; 

    ini_set("soap.wsdl_cache_enabled", "0"); 

    $client = new \Soapclient($path_to_wsdl, array('trace' => 1)); 

    $request = array(
     'WebAuthenticationDetail' => array(
      'UserCredential' => array(
       'Key'  => #KEY#, 
       'Password' => #PASSWORD# 
      ) 
     ), 
     'ClientDetail' => array(
      'AccountNumber' => #SHIPACCOUNT#, 
      'MeterNumber' => #METER# 
     ), 
     'Version' => array(
      'ServiceId' => 'trck', 
      'Major'  => '6', 
      'Intermediate' => '0', 
      'Minor'  => '0' 
     ), 
     'PackageIdentifier' => array(
      'Type' => 'TRACKING_NUMBER_OR_DOORTAG', 
      'Value' => '123456789012', 
     ), 

     'IncludeDetailedScans' => 1 
     'TrackingNumberUniqueIdentifier' => '510987654321~123456789012~FX' 
    ); 

回答

1

當您希望使用跟蹤聯邦快遞的API包,只需提供跟蹤號碼門標籤號碼;然而,聯邦快遞重複使用跟蹤號碼,因此您可能會發現其中一個跟蹤號碼有多個事件集合(或與其關聯的兩個以上貨件)。當發生這種情況時,您必須使用聯邦快遞跟蹤號碼唯一標識符(以跟蹤號碼作爲前綴)來獲取所需的一組事件。

在你請求的情況下,您正在使用聯邦快遞的測試環境非有效的跟蹤數(123456789012)和無關跟蹤號碼的唯一標識符(510987654321〜123456789012〜FX)。請注意,唯一標識符的後綴不是跟蹤號碼。

不幸的是,聯邦快遞不提供測試追蹤號碼,所以我建議您將端點切換到生產網址,並使用真實追蹤號碼測試追蹤服務,因爲生產追蹤號碼在測試環境中不起作用。

請記住,不使用跟蹤號碼唯一標識符,除非您的跟蹤號碼有兩個與其關聯的貨件

問候,

+0

我搬到了生產和它的作品!感謝Ozzy! :) –