1.0.7 • Published 4 years ago
gyys-create-grpc-api v1.0.7
安装
npm install gyys-create-grpc-api
使用
初始化组件
import pb from 'xx/proto'
import {init,createRpcServiceMethod} from 'gyys-create-grpc-api'
init({
apiurl: "http://<IP>:<PORT>",
pb,
//获取默认的头信息
getDefauleMeta:()=>{
return {}
}
//请求失败的时候监听, 通讯失败 或者 grpc返回异常对象
onRequestError:({responseError,responseData})=>{
console.log("onRequestError",responseError);
},
//请求成功,数据是否成功
isRequestSuccess: (responseData)=>{
let response = responseData;
if(response.response instanceof pb.net.PResponse){
response = response.response;
}else{
}
return response.success;
},
//请求成功,但数据失败的监听. 即 isRequestSuccess() == false 时 执行
onRequestDataError:(responseData)=>{
console.log("onRequestDataError",responseData);
}
});
export default createRpcServiceMethod
编写api
import createRpcServiceMethod from "xxx/createRpcServiceMethod"
//服务类名
const serviceClassName = "pb.LoginService"
/**
* 用户名密码登录
* @param {JSON} options {data:{},metadata:{}}
*/
export const loginByUsernameAndPassword = createRpcServiceMethod(serviceClassName,"loginByUsernameAndPassword","pb.LoginReply");
使用api
import loginByUsernameAndPassword from 'xxx/xxxService'
loginByUsernameAndPassword({
data: {} , //和pb对象对应
metadata:{} , //额外的头信息
}).then(res=>{
console.log(res); //后台返回的真实的数据
}).catch(({responseData,responseError})=>{
console.log(responseData,responseError); // responseData 后台返回的真实的数据 ,responseError 请求异常数据
})
1.0.7
4 years ago