【问题标题】:FEDEX API, Authentication FailedFEDEX API,身份验证失败
【发布时间】:2015-04-19 10:55:28
【问题描述】:

我正在将 FEDEX Tracking、Rate 和 Shipping API 集成到我的应用程序中,但我遇到了一个问题。

当我使用开发人员帐户详细信息运行我的代码时,一切运行正常。但是当我使用生产密钥运行相同的代码时,它给了我 "Error Code 1000, Authentication Error"

我已经更新了所有密钥,并将 URL 更改为指向生产 URL“https://ws.fedex.com:443/web-services/”。

这似乎不是 FEDEX 端的权限问题,因为标准服务(跟踪)默认为生产启用,这也给出了相同的错误 “错误代码 1000,身份验证错误”.

下面是 SOAP 请求和响应 XML。

请求:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RateRequest xmlns="http://fedex.com/ws/rate/v14">
<WebAuthenticationDetail>
<UserCredential>
<Key>AAAAAAAA</Key>
<Password>BBBBBBBBB</Password>
</UserCredential>
</WebAuthenticationDetail>
<ClientDetail>
<AccountNumber>CCCCCCCC</AccountNumber>
<MeterNumber>DDDDDDDD</MeterNumber>
</ClientDetail>
<TransactionDetail>
<CustomerTransactionId>java sample - Rate Request</CustomerTransactionId>
</TransactionDetail>
<Version>
<ServiceId>crs</ServiceId>
<Major>14</Major>
<Intermediate>0</Intermediate>
<Minor>0</Minor>
</Version>
<ReturnTransitAndCommit>true</ReturnTransitAndCommit>
<RequestedShipment>
<ShipTimestamp>2015-04-19T18:21:11.542+05:30</ShipTimestamp>
<DropoffType>REGULAR_PICKUP</DropoffType>
<ServiceType>FEDEX_GROUND</ServiceType>
<PackagingType>YOUR_PACKAGING</PackagingType>
<TotalInsuredValue>
<Currency>USD</Currency>
</TotalInsuredValue>
<Shipper>
<Address>
<StreetLines>1310 Piper Dr</StreetLines>
<City>Milpitas</City>
<StateOrProvinceCode>CA</StateOrProvinceCode>
<PostalCode>95035</PostalCode>
<CountryCode>US</CountryCode>
</Address>
</Shipper>
<Recipient>
<Address>
<StreetLines>3370 E. La Palma Avenue</StreetLines>
<City>Anaheim</City>
<StateOrProvinceCode>CA</StateOrProvinceCode>
<PostalCode>92806</PostalCode>
<CountryCode>US</CountryCode>
<Residential>false</Residential>
</Address>
</Recipient>
<ShippingChargesPayment>
<PaymentType>SENDER</PaymentType>
<Payor>
<ResponsibleParty>
<AccountNumber>ACCOUNT_NUMBER_PRESENT</AccountNumber>
</ResponsibleParty>
</Payor>
</ShippingChargesPayment>
<RateRequestTypes>ACCOUNT</RateRequestTypes>
<PackageCount>1</PackageCount>
<RequestedPackageLineItems>
<GroupPackageCount>1</GroupPackageCount>
<InsuredValue>
<Currency>USD</Currency>
<Amount>100.00</Amount>
</InsuredValue>
<Weight>
<Units>LB</Units>
<Value>10</Value>
</Weight>
<Dimensions>
<Length>1</Length>
<Width>1</Width>
<Height>1</Height>
<Units>IN</Units>
</Dimensions>
<SpecialServicesRequested/>
</RequestedPackageLineItems>
</RequestedShipment>
</RateRequest>
</soap:Body>
</soap:Envelope>

回应:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<v14:RateReply xmlns:v14="http://fedex.com/ws/rate/v14">
<v14:HighestSeverity>ERROR</v14:HighestSeverity>
<v14:Notifications>
<v14:Severity>ERROR</v14:Severity>
<v14:Source>prof</v14:Source>
<v14:Code>1000</v14:Code>
<v14:Message>Authentication Failed</v14:Message>
</v14:Notifications>
<v14:TransactionDetail>
<v14:CustomerTransactionId>java sample - Rate Request</v14:CustomerTransactionId>
</v14:TransactionDetail>
<v14:Version>
<v14:ServiceId>crs</v14:ServiceId>
<v14:Major>14</v14:Major>
<v14:Intermediate>0</v14:Intermediate>
<v14:Minor>0</v14:Minor>
</v14:Version>
</v14:RateReply>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

请帮我解决这个问题:(

【问题讨论】:

    标签: java soap fedex


    【解决方案1】:

    我从上周开始遇到这个问题,并在与 FedEx 技术人员讨论后终于找到了解决方案。看看为什么我们会因为我们从开发者网站生成的开发者测试帐户而面临这样的错误。我们应该记住的一件事是测试以“6”开头的帐号是生产,以“5”开头的密钥是正确的测试密钥。因此,当您遇到错误代码为 1000 的身份验证问题时,请检查您的测试密钥。

    如果这没有帮助,请回复我。

    【讨论】:

    • 我为印度创建了一个新的测试凭证集。但是其中的帐号以 6 开头,而对于 US&Global,它以 5 开头。无论国家/地区如何,它们的工作方式不应该相同,因为它们是用于测试环境的吗?
    【解决方案2】:

    https://www.xadapter.com/test-use-fedex-account-number-test-account-number-password-use/

    用户帐户密码与我们必须在 Web 服务中提供的密码不同。 请查看上面的链接

    【讨论】:

      【解决方案3】:

      如果您在生产中遇到所有 Web 服务的错​​误,那么您遇到了一个关键问题。从 FedEx 的开发人员区域获取新凭据,或尝试在 fedex.com 上通过电子邮件发送网络支持

      【讨论】:

      • 谢谢,问题来自联邦快递。这些服务没有从它们的末端启用。
      【解决方案4】:

      我很挣扎,所以我打电话给他们在美国的支持,我会说这非常好。我有机会与一些开发人员交谈,他们将实时观察您的请求,并会通过电话通知您,例如导致此身份验证问题的原因。拨打这里>> 1.877.339.2774

      现在,根据他们的支持人员的说法,有时在多次注册时,较早生成的密码会被新密码覆盖,而密钥/帐户和仪表编号保持不变。 (测试和生产密钥密码通过您注册的电子邮件发送)。

      因此,如果您确定您在代码中正确使用了测试/生产凭据,那么您可以尝试重新注册密钥,并且必须在注册表单上填写您的直接电子邮件地址。新密码将帮助您从 API 获得成功响应。

      此外,如果您使用 api 来跟踪货件,那么只有在您提供了测试跟踪号的情况下,测试凭据才会有所帮助,生产密钥也是如此。 Prod 密钥仅适用于真实的货运跟踪 ID

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-07-16
        • 1970-01-01
        • 1970-01-01
        • 2014-01-24
        相关资源
        最近更新 更多