【发布时间】:2020-09-26 23:58:49
【问题描述】:
我正在发送两个 HTTP 请求。第一个是用于授权的登录请求,第二个是用于创建一些用户数据的请求。登录调用工作正常,但在第二次调用时出现错误:
ERROR Error: Uncaught (in promise): HttpErrorResponse: {"headers":{"normalizedNames":{},
"lazyUpdate":null},
"status":404,
"statusText":"Not Found",
"url":"localhost:4200/… failure response for localhost:4200/api 404 Not Found"
at resolvePromise (zone-evergreen.js:798)
at resolvePromise (zone-evergreen.js:750)
at ZoneDelegate.invokeTask (polyfills.js:sourcemap:412)
at Object.onInvokeTask (vendor.js:sourcemap:64550)
at ZoneDelegate.invokeTask (polyfills.js:sourcemap:411)
at Zone.runTask (polyfills.js:sourcemap:180)
at drainMicroTaskQueue (polyfills.js:sourcemap:582)
at ZoneTask.invokeTask [as invoke] (polyfills.js:sourcemap:497)
at invokeTask (polyfills.js:sourcemap:1634)
我如何找出问题所在或问题所在? 我认为错误是因为第二个 API 没有来自第一个的身份验证信息才能正常工作,但是将 api1 的响应传递给 api2 也没有做任何事情。
发送请求的代码,我尝试在那里传递响应。 (虽然我仍然认为这是不正确的,但我不确定并且没有其他工作): 服务.ts
Login() {
let promiseResult : any;
this.http.post<any>('/Login', this.auth_payload).toPromise().then(data => {
promiseResult = data;
console.log("Login call" ,promiseResult)
return promiseResult
});
}
data = this.Login()
Create(data) {
let promiseResult : any;
this.http.post<any>('/Create', this.create_payload).toPromise().then(data => {
promiseResult = data;
console.log("set Information call" ,promiseResult)
return promiseResult
});
}
组件.ts
onSubmit(){
this.authService.Login()
let call = this.Service.Login()
return call
}
data = this.onSubmit
SetVital(){
let data = this.onSubmit
this.authService.Create(data)
【问题讨论】:
-
什么是 schedule_payload?
-
很抱歉。 API 也需要设置/创建信息的数据。
-
api需要的数据应该是第二个参数,第三个参数是headers和all。
-
好的。我应该在这个数据中发送授权响应吗? (我现在看到我对变量的使用有点误导)
-
在第二个参数中请求json,headers和所有在第三个参数中。
标签: angular typescript es6-promise