如何在网站上测试FedEx API

时间:2014-08-18 17:39:50

标签: api fedex

我在FedEx网站上有测试密钥,帐号和密码。

我尝试测试FedEx API,但我不知道我可以在网站上进行测试。

我找不到任何测试菜单。我查看了我收到测试网址通知的电子邮件。

我点击了网址,只显示了源代码。

我也在网站上下载了一些源文件。

我想知道是否需要将我收到的信息放入网站的源代码中。

或者,有什么我可以测试的吗?我在哪里可以找到它?

3 个答案:

答案 0 :(得分:3)

当您从FedEx获得测试凭据( 密钥,密码,帐号和 )时,您可以使用它们通过测试Web服务(一个FedEx测试装运网站)。您可以使用这些凭据执行的某些操作是“费率”,“发货”和“取消”货件。

在开发人员门户中,您可以找到不同语言的示例代码(Java,C#,VB.net等)。这些示例是控制台应用程序,因此您可能需要分析如何构建FedEx请求并在您的应用程序中执行您自己的实现。此外,如果您注意代码,您可能会注意到示例并未显示如何处理Web服务响应,因此我建议您将响应序列化为XML或JSON,以便您可以更好地查看速率的位置,标签和跟踪号码被存储。

我附加了SOAP Envelope示例出货请求的链接,希望它可以帮助您入门。 Fedex WSDL C# - Setting the Invoice # value

最佳!

答案 1 :(得分:2)

我将提供有关如何设置测试帐户的广泛概述,因为我只是自己尝试执行此任务,并且遇到了很多麻烦。我提供的一些信息包含在其他答案中,但是我试图通过示例来组织一个完整的答复。

以下是截至2020年2月的一些参考链接。

Developer Guide

Test Server Mock Tracking Numbers

Tracking xsd

1)您必须注册以获取测试凭证。在fedex网站上登录帐户后,请转到Web服务开发页(当前为https://www.fedex.com/en-us/developer/web-services/process.html#develop)。在此页面上,您将看到“获取测试密钥”的选项。请遵循以下说明。完成这些步骤后,您将收到开发人员测试密钥,密码,测试帐号和测试仪号。我的测试密码是通过电子邮件提供的。由于某些原因,其余信息未显示在成功/确认页面上。

2)完成注册后,您可以提交测试请求。测试URL端点为https://wsbeta.fedex.com:443/web-services(在确认电子邮件中提供)。我更喜欢使用Postman进行测试。如果您还想使用Postman,请使用tutorial on how to make SOAP requests。完整的SOAP文本如下。跟踪号是从上面引用的附录F:测试服务器模拟跟踪号文档中提取的。如果您复制并粘贴以下代码,请确保使用占位符文本替换密钥,密码,帐号和仪表编号。

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://fedex.com/ws/track/v18">
   <SOAP-ENV:Body>
      <TrackRequest>
         <WebAuthenticationDetail>
            <UserCredential>
               <Key>YOUR TEST KEY HERE</Key>
               <Password>YOUR TEST PASSWORD HERE</Password>
            </UserCredential>
         </WebAuthenticationDetail>
         <ClientDetail>
            <AccountNumber>YOUR ACCOUNT NUMBER HERE</AccountNumber>
            <MeterNumber>YOUR METER NUMBER HERE</MeterNumber>
         </ClientDetail>
         <TransactionDetail>
            <CustomerTransactionId>Track By Number_v18</CustomerTransactionId>
            <Localization>
               <LanguageCode>EN</LanguageCode>
            </Localization>
         </TransactionDetail>
         <Version>
            <ServiceId>trck</ServiceId>
            <Major>18</Major>
            <Intermediate>0</Intermediate>
            <Minor>0</Minor>
         </Version>
         <SelectionDetails>
            <PackageIdentifier>
               <Type>TRACKING_NUMBER_OR_DOORTAG</Type>
               <Value>231300687629630</Value>
            </PackageIdentifier>
         </SelectionDetails>
         <ProcessingOptions>INCLUDE_DETAILED_SCANS</ProcessingOptions>
      </TrackRequest>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

以上结果导致成功的请求和响应。这是通过跟踪编号发出跟踪请求的示例。您也可以通过其他方法发出请求。

更新:使用API​​通过跟踪号获取货运信息在测试API上有效,但是使用其他方法(例如通过客户参考或托运人参考)则不行。从3/2/2020开始,这些过滤器返回错误9040和9045。我联系了FedEx支持人员,并与我交谈的人确认测试API不适用于这些类型的过滤器,但可以在生产API上使用。我已经证实这是正确的。生产站点确实允许您以跟踪号以外的其他方式提取信息。

答案 2 :(得分:1)

用于测试网址的

https://wsbeta.fedex.com:443/web-services

如果您需要完整文档,请下载fedex web services documentation