2011-10-25 13 views
2

私のアプリケーションにFedExを統合しようとしています。私はテストアカウントを作成しました。 RateRequestを送信すると、認証に失敗しました(コードは1000です)。 私はv10のFedex Rateサービスを使用しています。 SOAPの場合、私はSavon ruby​​ gemを使用します。ここでフェデックス:テストアカウントで認証に失敗しました

は、私が使用するコードです:

require 'rubygems' 
require 'savon' 

TEST_URL = 'https://wsbeta.fedex.com:443/web-services/rate' 

client = Savon::Client.new do 
    wsdl.document = File.expand_path("../rate_wsdl.xml", __FILE__) 
    wsdl.endpoint = TEST_URL 
end 

client.request "RateRequest" do 
    soap.body = { 
    'WebAuthenticationDetail' => {'Key' => KEY, 'Password' => PASSWORD}, 
    'ClientDetail' => {'AccountNumber' => ACCOUNT_NUMBER, 'MeterNumber' => METER_NUMBER}, 
    'RequestedShipment' => { 
     'PackagingType' => 'FODEX_BOX', 
     'Shipper' => 
     {'Address' => {'PostalCode' => '90210', 'CountryCode' => 'US', 'Residential' => 'true'} 
     }, 
     'Recipient' => 
     {'Address' => {'PostalCode' => 'KIP 1J1', 'CountryCode' => 'CA', 'Residential' => 'true'} 
     }, 
     'RateRequestTypes' => 'ACCOUNT', 
     'PackageCount' => '1', 
     'RequestedPackages' => { 
     'Weight' => {'Units' => 'LB', 'Value' => '7.5'}, 
     'Dimensions' => {'Length' => '15', 'Width' => '10', 'Height' => '5', 'Units' => 'IN'} 
     } 
     #'LabelSpecification' => '' 
    } 
    } 
end 

私はそれについて多くをGoogleで検索しました。何人かの人々は同じ問題を抱えていた。人々はそれがアドレスの検証の許可の欠如のために引き起こされることができると言いますが、私はそれを無効にする方法を見つけることができません。 すべての資格情報がOK(アカウント番号、メーター番号、キー、パスワード)であることを確認します。 また、エンドポイントURLにも「https://wsbeta.fedex.com:443/web-service」を試しました。

答えて

2

間違っていました。無効なSOAPリクエストを送信しました。 SOAPUIツールのおかげで、私の要求を検証するのに役立ちました。

+1

,,私はwsdlファイル "gateway.fedex.com/web-services"でurlを次のように試してみました。 、 "gatewaybeta.fedex.com/web-services";私はRateService_v10.wsdlファイルを使用しています。それでも私はエラーを取得しています。これに関する親切なアドバイス – mymotherland

関連する問題