api.js 1.2 KB
/**
 * 接口公共访问方法
 * @author: xuqi<qi.xu@yoho.cn>
 * @date: 2016/3/28
 */
'use strict';

var rp = require('request-promise');
var errUtil = require('../util/error');

const API_URL = 'http://testapi.yoho.cn:28078';

// const DEV_API_URL = 'http://devapi.yoho.cn:58078';
// const SERVICE_URL = 'http://testservice.yoho.cn:28077';
// const YOHOBUY_URL = 'http://www.yohobuy.com';
// const API_OLD = 'http://test2.open.yohobuy.com';

class API {
    constructor() {
        this.headers = {
            'User-Agent': 'YOHO WEB NODE' // TODO: 请求的服务端是否有要求格式,是否添加
        };
        this.timeout = 5000;
    }

    get(url, data) {
        return rp({
            url: `${API_URL}${url}`,
            headers: this.headers,
            timeout: this.timeout,
            qs: data
        }).catch(errUtil.apiError);
    }

    post(url, data) {
        return rp({
            url: `${API_URL}${url}`,
            method: 'post',
            headers: this.headers,
            timeout: this.timeout,
            form: data // TODO: post 请求格式不知后端要求 json 还是 form 提交,需要后续完善
        }).catch(errUtil.apiError);
    }
}

module.exports = API;