Cómo nodejs propio trasero imgSecCheck Ali nube de micro-carta

Nodejs este tipo de lenguaje, una línea de código será capaz de lograr una gran cantidad de funciones, muy fácil. Sin embargo, cuando se desea implementar una función, Baidu tarde, no sé cómo escribir cuando se tiene en cuenta el uso de ocasión en C / C ++.
El mismo código en la implementación de Java no es complicado, ya que Java es sincrónico, puede ser elegido nodejs es asíncrona. nodejs utilizado menos, usted no sabe cuáles son algunas función mágica, no hay escritura mágica.

Requisitos: descargar imágenes de una nube privada, subidos a la carta de micro la verificación de antecedentes.

Como resultado, el Internet no está escrito por una sola persona puede copiar directamente; Después de numerosos intentos, finalmente usando la siguiente función con éxito.

const queryWeixinCheck = async(param) => {
  return new Promise((resolve, reject)=>{
    request({
        url: 'https://api.weixin.qq.com/wxa/img_sec_check?access_token=' + param.access_token,
        method: "POST",
        formData: {
            buffer: {
                value:  request(param.url),
                options: {
                    filename: param.filename,
                    contentType: 'image/' + param.extname
                }
            },
        },
    },(error, response, body) => {
          error ? reject(error) : resolve(JSON.parse(body));
    })
  });
}

Documento de referencia:
https://www.runoob.com/nodejs/nodejs-stream.html
https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/sec-check/security. imgSecCheck.html
siguiendo este enlace, tener un compañero como yo creo, directamente

curl -F [email protected] 'https://api.weixin.qq.com/wxa/img_sec_check?access_token=ACCESS_TOKEN'

Después de la solicitud de captura, a continuación, nodejs empalme también logró un mensaje, pero el código no es bello, no votar por él.
https://developers.weixin.qq.com/community/develop/doc/000486c0fbc558719d89a281c51800?_at=1577033510988
adjunto: este es el resultado de la captura

POST /photo/api/mangement/getAccessToken HTTP/1.1
User-Agent: curl/7.29.0
Host: 112.74.68.252:8091
Accept: */*
Content-Length: 98934
Expect: 100-continue
Content-Type: multipart/form-data; boundary=----------------------------fa0769e47e5c

HTTP/1.1 100 Continue

------------------------------fa0769e47e5c
Content-Disposition: form-data; name="media"; filename="zf.png"
Content-Type: application/octet-stream

.PNG
.
...
IHDR...b...
.....AQuq....sRGB.........gAMA..(省略一张图片的大小)....a......(6.E..PG....HTTP/1.1 404 Not Found
X-Served-By: Koa
Content-Type: text/plain; charset=utf-8
Content-Length: 9
Date: Wed, 08 Apr 2020 01:43:35 GMT
Connection: keep-alive

Not Found

Nota:
nodejs descargar imágenes

request(img_url).pipe(fs.createWriteStream(temp_file.path));

nodejs leer la imagen

fs.readFileSync(temp_file.path)

Supongo que te gusta

Origin www.cnblogs.com/bugutian/p/12661585.html
Recomendado
Clasificación