UNPKG

1.29 kBJavaScriptView Raw
1'use strict';
2
3var path = require('path');
4var fs = require('fs');
5var util = require('./util');
6var wrapper = util.wrapper;
7
8/**
9 * 上传图片
10 * 详细请看:<http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html>
11 * Examples:
12 * ```
13 * api.uploadPicture('/path/to/your/img.jpg', callback);
14 * ```
15 * Callback:
16 *
17 * - `err`, 调用失败时得到的异常
18 * - `result`, 调用正常时得到的对象
19 *
20 * Result:
21 * ```
22 * {
23 * "errcode": 0,
24 * "errmsg": "success"
25 * "image_url": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2ibl4JWwwnW3icSJGqecVtRiaPxwWEIr99eYYL6AAAp1YBo12CpQTXFH6InyQWXITLvU4CU7kic4PcoXA/0"
26 * }
27 * ```
28 * @param {String} filepath 文件路径
29 * @param {Function} callback 回调函数
30 */
31exports.uploadPicture = function (filepath, callback) {
32 this.preRequest(this._uploadPicture, arguments);
33};
34
35/*!
36 * 更新商品库存的未封装版本
37 */
38exports._uploadPicture = function (filepath, callback) {
39 var basename = path.basename(filepath);
40 var url = this.endpoint + '/merchant/common/upload_img?access_token=' +
41 this.token.accessToken + '&filename=' + basename;
42 var reader = fs.createReadStream(filepath);
43 var opts = {
44 dataType: 'json',
45 type: 'POST',
46 stream: reader
47 };
48 this.request(url, opts, wrapper(callback));
49};