豐橋 - 一站式對接服務平台, 打通客戶與順豐系統之間的信息流, 實現物流供應鏈一體化.
隨着一個電商項目和順豐合作, 信息流對接就是我們開發的事了.
順豐通過豐橋提供了一些開放接口, 不過豐橋提供的 SDK 非常簡陋, 對 .NET 的支持就更差了. 於是就有了這個項目 sf-express-sdk-net
主要接口集成:
| 接口 | 接口方式 | 描述 |
|---|---|---|
| 下訂單接口 | HTTP/POST | 客戶系統向順豐系統下達訂單,為訂單分配運單號 |
| 下訂單(國際件)接口 | HTTP/POST | 客戶系統向順豐系統下達訂單,為訂單分配運單號 |
| 訂單結果查詢接口 | HTTP/POST | 用於在未收到返回數據時,查詢下訂單(含篩選)接口客戶訂單當前的處理情況 |
| 訂單取消接口 | HTTP/POST | 客戶在發貨前取消訂單 |
| 訂單篩選接口 | HTTP/POST | 客戶系統通過此接口向順豐系統發送主動的篩單請求,用於判斷客戶的收、派地址是否屬於順豐的收派范圍 |
| 路由查詢接口 | HTTP/POST | 客戶可通過此接口查詢順豐運單路由,順豐系統會在響應XML報文返回當時點要求的全部路由節點信息 |
| 路由推送接口 | HTTP/POST | 當路由信息生產后向客戶主動推送要求的順豐運單路由信息。推送方式為增量推送,對於同一個順豐運單的同一個路由節點,不重復推送 |
| 子單號申請接口 | HTTP/POST | 客戶在通過下單接口提交訂單后,可從此接口獲取更多的子運單號 |
| 訂單狀態推送接口 | HTTP/POST | 推送訂單的攬收狀態 |
注: 2個推送接口需要自行開發對接.
單元測試
SDK 中提供了相對完整的單元測試, 完整的調用示例的話小伙伴們可以再源碼中找到更多內容...
獲取和使用
- 源碼獲取 - 有些小伙伴可能需要自行控制和維護依賴內容, 可以克隆一份源碼自己修改維護...此項目的 LICENSE 是最寬松的 MIT.
- NuGet 獲取 - 為了方便你我他共同溝通開發維護和使用...筆者這里提供了 NuGet 包 SF.Express.Sdk
集成進來后需要的使用:
using SF.Express.Sdk.Request;
using SF.Express.Sdk.Response;
using System;
// 下訂單請求
OrderServiceRequest orderServiceRequest = new OrderServiceRequest();
// 下訂單響應
OrderServiceResponse orderServiceResponse = new SFExpressClient().Execute(request: orderServiceRequest);
// 后續邏輯...
封裝過后的 SDK, 調用上還是非常簡潔直觀的...
注意事項
另外這里還是復述一下:
- 順豐豐橋開放平台個人也可以非常簡單注冊和申請
- 順豐豐橋接口為了兼容 WebService 數據組成部分保留了 XML 內容...不過 SDK 的封裝已經磨平了這個問題
- 順豐豐橋有個比較有意思的點, 測試和正式環境是同一個, 每一個接口都必須在測試調用通過3次以后, 才能申請正式調用.
- 保管好自己的秘鑰信息.
