12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- var express = require('express');
- var request = require('request');
- var router = express.Router();
- // 创建 application/x-www-form-urlencoded 编码解析
- var bodyParser = require('body-parser');
- var urlencodedParser = bodyParser.urlencoded({ extended: false });
- var key = "9f719ab7014f2cbdc7b394edf70d0f76";
- var url = 'http://apis.juhe.cn/mobile/get?key=' + key;
- var type = '';
- var callback = '';
- router.get('/', function(req, res, next) {
- url += '&phone=' + req.query.phone;
- type = req.query.type === 'xml' ? 'xml' : '';
- callback = req.query.callback;
- getMobile(req, res, next);
- });
- router.post('/', urlencodedParser, function(req, res, next) {
- url += '&phone=' + req.body.phone;
- type = req.body.type === 'xml' ? 'xml' : '';
- callback = req.body.callback;
- getMobile(req, res, next);
- });
- function getMobile(req, res, next) {
- url += !!type ? '&dtype=' + type : '';
- request(url, function(err, response, body) {
- if (!type) {
- body = JSON.parse(body);
- if (!err && response.statusCode === 200 && body.error_code === 0) {
- var output = {
- data: body.result.data || body.result,
- status: {
- code: 200,
- message: ''
- }
- };
- if (callback) {
- return res.jsonp(output);
- } else {
- return res.json(output);
- }
- } else {
- var error = {
- code: -1,
- message: body.reason
- };
- res.json(error);
- }
- } else {
- res.send(body);
- }
- });
- }
- module.exports = router;
|