【发布时间】:2022-10-19 18:49:53
【问题描述】:
我正面临 axios post 方法的问题。当我创建用户发布请求发送到 api 并作为响应它返回给我用户名密码和电子邮件。但是我无法从响应中得到它来访问它来完成我的工作。
这是我发送请求的创建用户功能
createUser = async (data: CreateUser) => {
try {
await agent.createUser.create1(data,data.profilePhoto!).then((res)=>{
//here i destructure result
const {request,config,data,status,headers,statusText}=res;
runInAction(()=>{
// #1 here i Save response in userResponse Interface and Console it it shows on console on type of proxy
this.userResponse = res;
console.log(this.userResponse?.data)
})
// #2 when i direct console data it gives me all data
console.log(data);
});
runInAction(() => {
this.loadUser({pageIndex:0, pageSize:5});
});
} catch (error) {
console.log(error);
}
};
这是控制台中的 #1 结果
和#2
我的代理代码是这样的
create1: (data: CreateUser,file:Blob) =>{
let formData=new FormData()
formData.append("profilePhoto",file)
formData.append("userName",data.userName)
formData.append("email",data.email)
formData.append("password",'abc@123')
formData.append("phoneNumber",data.phoneNumber)
formData.append("language",data.language)
formData.append("positionTitle",data.positionTitle)
formData.append("userRoles",data.userRoles!.toString())
formData.append("allowedDepartments",data.allowedDepartments!.toString())
formData.append("allowedSecurityLevels",data.allowedSecurityLevels!.toString())
formData.append("allowedDocumentType",data.allowedDocumentType!.toString())
formData.append("departmentId",data.departmentId.toString())
formData.append("organizationId",data.organizationId.toString())
return axios.post<CreateUser,any>('/User/CreateUser',formData,{
headers:{"Content-type":"multipart/form-data"},
})
},
这是我用于存储响应数据的接口
export interface responseCode{
code:number;
message:string;
data:{
email:string;
password:string;
userName:string;
};
}
【问题讨论】:
-
请停止像这样使用随机大写字母书写。阅读这样的文本非常烦人——现在其他人正在解决你的问题。
-
请改写您的问题 - 目前尚不清楚问题出在哪里。
-
@LiorPollak 我不明白哪些字母会影响您的意思。顺便说一句,我解决了我的问题,谢谢
标签: reactjs typescript react-typescript