8

USPS から配送料を取得する必要があります。

私は彼らにサインアップし、ユーザーIDを取得し、ページに示されているようにサンプルリクエストXMLを使用しようとしました - https://www.usps.com/webtools/htm/Rate-Calculators-v1-3.htm 、しかし次のエラー応答を取得し続けます。

<Error>
<Number>80040b1a</Number>
<Description>API Authorization failure. RateV4 is not a valid API name for this protocol.</Description>
<Source>UspsCom::DoAuth</Source>

どこにポイントが欠けているのかわかりません。Googleも役に立ちませんでした:-(

API 名を RateV4 として渡しています。国際配送 API - IntlRateV2 も試しました。はい、Secure https://secure.shippingapis.com/ShippingAPITest.dll api も試しました。そして、私はサポートスタッフにメールしました。何も機能していません。

この基本的なことが機能したら、クラスを取得し、カスタム シリアライゼーションを使用してリクエストをシリアライズし、レスポンスをデシリアライズする予定です。これは、XML を直接使用するよりも優れています。しかし、それはおそらく他の質問としてより適切でしょう。基本的なことを機能させることは、現在の懸念事項です。ありがとう

4

3 に答える 3

7

これは、対象のサーバーが RateV4 をサポートしていないことを意味します。テストを行う場合でも、RateV4 用の運用サーバーを使用する必要があると思います。

于 2011-10-25T06:41:38.587 に答える
2

現時点では、USPS テスト サーバーで実際に動作する Rate API のバージョンはありません (以前のコメントで CountMurphy が指摘したように)。ただし、実稼働サーバーへのアクセスがアカウントに承認される前に、テスト サーバーでいくつかの API 要求が成功する必要があります。USPS と何度かやり取りした後、代わりに TrackV2 API を認証するように指示されました。これにより、Rate API にもアクセスできます。

USPS サポートから提供された TrackV2 リクエストの 2 つの例を次に示します。必ず実際の USERID 値を含めてください。これらの正確なラベル番号を使用する必要があります。

例 #1

http://production.shippingapis.com/ShippingAPITest.dll?API=TrackV2
&XML=<TrackRequest USERID="xxxxxxxx">
<TrackID ID="EJ958083578US"></TrackID></TrackRequest>

例 #2

http://production.shippingapis.com/ShippingAPITest.dll?API=TrackV2
&XML=<TrackRequest USERID="xxxxxxxx">
<TrackID ID="EJ958088694US"></TrackID></TrackRequest>
于 2012-10-07T05:54:46.480 に答える
1

V2を試すと、それが得られます

<Error>
<Number>80040b1a</Number>
<Description>API Disabled: RateV2.  </Description>
<Source>UspsCom::DoAuth</Source>

于 2012-07-27T19:42:39.983 に答える