嘿,我将Directus与Ionic 3一起用于浏览器,但HTTP PUT出现问题。
错误:
错误:{代码:6,消息:“方法不允许”}
原始:对象
标头:HttpHeaders {normalizedNames:Map(0),lazyUpdate:null, lazyInit:ƒ}
消息:“ http失败响应为 http://example.com/backend/api/public/_/users?single=1&access_token=myToken&filter[id]=50: 405不允许使用方法“
名称:“ HttpErrorResponse”
好:错误
状态:405
statusText:“不允许使用方法”
url: “ http://example.com/backend/api/public/_/users?single=1&access_token=myToken&filter[id]=50”
这是我的代码:
updatePwd(user:any, userId: any){
return this.api.put('users?single=1&access_token=myToken&filter[id]='+userId,user).map((res: any) => {
return res;
});
}
POST和GET可以很好地工作
newUser(user:any){
return this.api.post('users?access_token=myToken',user).map((res: any) => {
return res;
});
}
getUser(email:any){
return this.api.get('users?single=1&access_token=myToken&filter[email]='+email).map((res: any) => {
return res;
});
}
我是Directus的新用户,对此我不太了解。那么这里出什么问题呢?我必须配置一些东西吗?
预先感谢:)
编辑: 我尝试过PATCH,但效果很好^^
updatePwd(userId: any, user:any){
return this.api.patch('users/'+userId+'?&access_token=myToken',user).map((res: any) => {
return res;
});
}
答案 0 :(得分:2)
Directus使用PATCH而不是PUT来更新行:https://docs.directus.io/api/reference.html#update-user