我的API接受此数据,并在邮递员中尝试它的工作正常:
方法: POST
Header:[{"key":"Accept","value":"application/json","description":""} , {"key":"Content-Type","value":"application/x-www-form- urlencoded","description":""}]
Body :只有当我在x-www-form-urlencoded中发送key:value时才能工作。
我的IONIC 2代码是:
return new Promise((resolve, reject) => {
let headers = new Headers();
headers.append('Accept', 'application/json');
headers.append('Content-Type', 'application/x-www-form-urlencoded');
let body = new FormData();
body.append('email', email);
let options = new RequestOptions({ headers: headers });
this.http.post(config.API_URL+"/password/email" ,body , options)
.subscribe(res => {
resolve(res.json());
}, (err) => {
reject(err.json());
});
});
我得到了一个错误
POST {URL}/password/email 422 (Unprocessable Entity) polyfills.js:3
我不知道我的代码出了什么问题?
发布于 2017-11-06 05:33:03
试试下面的代码,emailId是从哪里来的?如果是gloabl变量,则使用this.emailId。
HTTP请求或响应中的Content-Type标头描述邮件正文的内容类型。
请求中的Accept标头告诉服务器客户端在响应正文中期望的内容类型
请参考API了解期望的数据类型和它将发送的数据类型。
return new Promise((resolve, reject) => {
let headers = new Headers();
headers.append('Content-Type', 'application/json');
let body = JSON.stringify(
{
"emailId": this.emailId
}
);
let options = new RequestOptions({ headers: headers });
this.http.post(config.API_URL+"/password/email" ,body , options)
.subscribe(res => {
resolve(res.json());
}, (err) => {
reject(err.json());
});
});
发布于 2018-11-05 22:14:04
我在Laravel API上也遇到了同样的问题,那么这可能是两种问题。
let headers = new Headers(); headers.append('Accept', 'application/json'); headers.append('Content-Type', 'application/x-www-form-urlencoded'); // adding Authorization token in your headers headers.append("Authorization:", token);
上添加授权
代码...描述
200 ......好的
400 ......反向请求。该请求通常是无效的。
401 ......未经授权。用户和密码或访问令牌无效。
403 ......禁止。API访问被阻止或用户被阻止。
404 ......未找到。访问地址不存在。
422 ......不可处理的实体。请求有效,但传递的数据无效。
429 ......许多请求。用户已达到请求限制。
500 ......内部服务器。错误处理请求时发生内部服务器错误
https://stackoverflow.com/questions/47126371
复制