项目中需要用到,调用了百度的银行卡识别接口。刚开始一直报错216101,查询了下是image没正确传过去。研究了一会儿,解决这个问题,百度了下这个错误代码,关于前端的js解决方案几乎没有,有的是其他编程语言的。特此把代码贴出来,希望能帮到有缘人。
我将input隐藏掉是因为原生的input太丑,简单写了个div,点击div代替点击input。
还有关于access_token的请求我这里就不贴代码了,百度api写的很详细。
另外如果单纯想知道银行卡信息,可以用bankcardinfo 这个npm包。非常方便。
import React, { Component } from 'react';
import qs from 'qs';
export default class Test extends Component {
constructor() {
super()
this.onchanges = this.onchanges.bind(this);
}
onchanges(event) {
let file = event.target.files[0];
if (file) {
//将图片转化为base64格式。
let reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = (event) => {
fetch('https://aip.baidubce.com/rest/2.0/ocr/v1/bankcard?access_token="你自己应用的token"', {
method: 'POST',
headers: {
'Conte