快递查询API

您所在的位置:网站首页 快递查询api 快递查询API

快递查询API

2022-10-09 02:25| 来源: 网络整理| 查看: 265

使用快递的接口,之前是为了做公众号,用户输入订单号,微信后台进行查询并反馈给微信用户,可以收到关于此单号的物流信息情况,以此目的才写了这篇博客,希望可以帮助到大家。

若有转载,请注明来自Coolspan: http://blog.csdn.net/qxs965266509,谢谢大家的支持.

快递查询接口

提供开发者平台查询快递接口的公司有:

快递鸟Trackingmore快递网API快递100

快递鸟,支持全球400余家快递物流公司接口,请求Api接口是不限制次数的哟,并且永久免费

如果你的请求次数很少可以考虑其他家,反之,请求量大,快递鸟免费Api就是很不错的选择。

点击免费申请快递鸟APIKey授权才能做对接,申请后加他们技术支持QQ群很快就能对接

下面是以快递100提供的开发者接口进行展开,如有错误,请指正并及时修改。

首先,申请一个快递100的账号; 然后进入http://www.kuaidi100.com/openapi/界面点击免费申请,免费申请的接口每天接口的请求次数都是有限制的,如果不想被限制,可能就得考虑商务合作或者另求它处。

按照申请流程一步步做完后,静等审核通过。 调用频率选择 2000次/每天,邮箱必须正确,因为审核通过后会给你发送邮件,邮件内容会有请求接口使用的key密钥,不通过会告知你具体什么原因导致不通过。

使用

案例分为3个

使用的是Chrome的postman插件进行Api测试调用使用Nodejs环境进行快递查询在Android使用快递接口查询

打开http://www.kuaidi100.com/openapi/api_post.shtml查看Api接口定义文档,了解url、请求参数及响应数据。 主要对运单查询API进行讲解测试.

API URL 所支持的快递公司及参数说明 支持的国际类快递及参数说明

这里写图片描述 这里写图片描述

使用postman查询

填写请求url及请求参数,下方就是响应的数据,看效果: 这里写图片描述

Nodejs查询订单

请求:

/** * Created by Coolspan on 2016/5/18. */ var ajax = require("./ajax.js") ajax.ajax({ type: "POST", url: "http://api.kuaidi100.com/api", data: { id: "28a3e64ebad725d5", com: "tiantian", nu: "666509962436", show: 0, muti: 1, order: "desc" }, success: function (data) { var orderInfo = JSON.parse(data); console.log(orderInfo) } })

ajax.js –>

var https = require("https"); var http = require("http"); var Url = require("url"); var querystring = require('querystring'); // 默认值 var defaultSetting = { // 如果返回false可以取消本次请求 beforeSend: function (req) { }, complete: function (req) { }, data: '', // Object, String dataType: 'JSON', error: function () { }, headers: {}, // {k:v, ...} statusCode: {}, success: function (data) { }, timeout: 10, type: 'GET', // GET, POST url: "www.baidu.com" }; /** * */ function ajax(settings) { // ajaxlbs.js(settings) if (typeof settings === "object") { // 处理默认值继承 // todo ... for (key in defaultSetting) { if (settings[key] == null) { settings[key] = defaultSetting[key]; } } } var params = Url.parse(settings.url, true); // params 解析出来的参数如下 // { // "protocol":"http:", // "slashes":true, // "host":"localhost:3000", // "port":"3000", // "hostname":"localhost", // "href":"http://localhost:3000/?d=1", // "search":"?d=1", // "query":{"d":"1"}, // "pathname":"/", // "path":"/?d=1" // } var options = { host: params.hostname, port: params.port || 80, path: params.path, method: settings.type }; if (settings.data != null) { options.path += "?" for (var key in settings.data) { options.path = options.path + "&" + key + "=" + settings.data[key]; } console.log(options.path); } var httpUnity = http; if (params.protocol == "https:") { options.port = 443; var httpUnity = https; } var req = httpUnity.request(options,function (res) { var data = ''; res.on('data',function (chunk) { data += chunk; }).on('end', function () { if (settings.dataType === "json") { try { data = JSON.parse(data); } catch (e) { data = null; } } settings.success(data); settings.complete(req); }); }).on('error', function (e) { settings.error(e); }); // if (typeof settings.beforeSend === "function") { // if (!settings.beforeSend(req)) { // settings.complete(req); // req.end(); // return false; // } // } if (settings.type === "POST") { var dataStr = querystring.stringify(settings.data); req.setHeader("Content-Length", dataStr.length); req.write(dataStr); } req.setTimeout(settings.timeout); req.end(); } exports.ajax = ajax;

ps: ajax.js和请求接口的代码都是放在同一层目录的,如果目录接口不对,请修改require中的路径。

结果如图所示: 这里写图片描述

Android查询快递

使用的网络库是Google‘Volley’

package cn.coolspan.andframe1; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import com.android.volley.AuthFailureError; import com.android.volley.Request; import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.toolbox.StringRequest; import com.android.volley.toolbox.Volley; import java.util.HashMap; import java.util.Map; /** * Coolspan */ public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.button).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { next(); } }); } private void next() { StringRequest stringRequest = new StringRequest(Request.Method.POST, "http://api.kuaidi100.com/api", new Response.Listener() { @Override public void onResponse(String response) { } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { } }) { @Override protected Map getParams() throws AuthFailureError { Map params = new HashMap(); params.put("id", "28a3e64ebad725d5"); params.put("com", "tiantian"); params.put("nu", "666509962436"); params.put("show", "0"); params.put("muti", "1"); params.put("order", "desc"); return params; } }; Volley.newRequestQueue(this).add(stringRequest); } }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3