[英]HTTP Request from Angular 5 to Lumen Rest API
我在将 HTTP 请求从 angular 5 前端应用程序发送到 lumen 后端 Restful api 时遇到问题。
好吧,我只想注册一个用户。
这是我用于处理用户创建的流明后端代码:
public function create(Request $request)
{
$this->validate($request, [
'screen_name' => 'required',
'email' => 'required',
'password' => 'required'
]);
$request['api_token'] = app('hash')->make(str_random(60));
$request['password'] = app('hash')->make($request->password);
$user = User::create($request->all());
return response()->json($user, 201);
}
我检查了后端,它与 POSTMAN 一起工作正常。
现在在角度 5 :
registerUser(value){
var Indata={
screen_name: value.scrname,
email: value.email,
password: value.password
}
return this.http.post(window.location.hostname+':1000/api/v1/users/',Indata);
}
并且这个角度请求也通过公共虚假 api 进行检查以进行测试并且它工作正常。
所以,首先我遇到了 CORS 问题,因为 lumen api 服务器和我的 angular 服务器正在本地服务器下工作。 然后我补充说:
window.location.hostname
代替 :
http://localhost
它解决了 CORS 问题,但现在我遇到了一个问题,我不明白问题出在哪里?
error: error { target: XMLHttpRequest, isTrusted: true, lengthComputable:
false, … }
headers: Object { normalizedNames: Map, lazyUpdate: null, headers: Map }
message: "Http failure response for (unknown url): 0 Unknown Error"
name: "HttpErrorResponse"
ok: false
status: 0
statusText: "Unknown Error"
url: null
我也发现了一个关于这个问题的角度代理配置,但它没有用。
因此,任何帮助将不胜感激。 谢谢。
您是否尝试过: this.http.post('/api/v1/users/',Indata)
?
你的 src 文件夹中有 proxy.conf.json 吗?
proxy.conf.json:
{
"/api/*": {
"target": "http://localhost:8000",
"secure": false,
"logLevel": "debug"
}
}
在 angular.json 下的“服务”是这样的:
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "frontend:build",
"proxyConfig": "src/proxy.conf.json"
}
你也必须在你的流明中设置一个 CorsMiddleware。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.