FedEx:身份验证使用测试帐户失败

时间:2011-10-25 17:09:02

标签: soap wsdl fedex

我正在尝试将FedEx与我的应用程序集成。我创建了一个测试帐户。 当我发送RateRequest时,我得到了一个响应身份验证失败(代码是1000)。 我使用联邦快递费率服务的v10。对于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

我搜索了很多关于它的信息。有些人遇到了同样的问题。人们说它可能是由于缺乏地址验证的许可而引起的,但我无法找到如何禁用它。 我确信所有凭据都没问题(帐号,电表号码,密钥,密码)。 我还尝试了“https://wsbeta.fedex.com:443/web-service”作为端点网址。

1 个答案:

答案 0 :(得分:2)

弄错了。我发送了无效的SOAP请求。感谢SOAPUI工具,它帮助我验证了我的请求。