tns 调试期间没有请求
No requests during tns debug
这是我在 nativescript 和一般移动开发环境中的第一个应用程序。我遇到了一些困难。我正在尝试的是使用 angular http 模块发出一些虚拟 http 请求,但由于某种原因,当我在 chrome 中调试应用程序时,似乎没有发出任何请求。
这是我的代码:
模板:
<Page>
<StackLayout>
<Button text="GET" (tap)="get()"></Button>
<Button text="POST" (tap)="post()"></Button>
</StackLayout>
</Page>
组件:
import { Component } from "@angular/core";
import { AuthService } from "../../shared/auth.service";
import { HttpClient } from "@angular/common/http";
@Component({
selector: "register",
moduleId: module.id,
templateUrl: "./register.component.html"
})
export class RegisterComponent {
constructor(private auth: AuthService, private http: HttpClient) {}
get()
{
console.log('GET');
this.http.get('https://httpbin.org/get');
}
post()
{
console.log('POST');
this.http.post('https://httpbin.org/post', null);
}
}
现在当这些函数执行时没有记录请求。
我 运行 在模拟器中,我可以很好地浏览它,所以如果有人对可能出现的问题有一些想法...
您必须订阅 http 请求,否则它们只会被定义而不会被调用,请尝试在 this.http.get('https://httpbin.org/get')
和 this.http.post('https://httpbin.org/post', null)
之后添加以下内容:
.subscribe(
res => console.log(res),
err => console.log(err),
() => console.log("Done"),
);
编辑
本来没提,其实最好订阅returnshttp方法的函数,而不是订阅调用本身。根据经验,我发现可能会出现一些异常行为
这是我在 nativescript 和一般移动开发环境中的第一个应用程序。我遇到了一些困难。我正在尝试的是使用 angular http 模块发出一些虚拟 http 请求,但由于某种原因,当我在 chrome 中调试应用程序时,似乎没有发出任何请求。
这是我的代码:
模板:
<Page>
<StackLayout>
<Button text="GET" (tap)="get()"></Button>
<Button text="POST" (tap)="post()"></Button>
</StackLayout>
</Page>
组件:
import { Component } from "@angular/core";
import { AuthService } from "../../shared/auth.service";
import { HttpClient } from "@angular/common/http";
@Component({
selector: "register",
moduleId: module.id,
templateUrl: "./register.component.html"
})
export class RegisterComponent {
constructor(private auth: AuthService, private http: HttpClient) {}
get()
{
console.log('GET');
this.http.get('https://httpbin.org/get');
}
post()
{
console.log('POST');
this.http.post('https://httpbin.org/post', null);
}
}
现在当这些函数执行时没有记录请求。 我 运行 在模拟器中,我可以很好地浏览它,所以如果有人对可能出现的问题有一些想法...
您必须订阅 http 请求,否则它们只会被定义而不会被调用,请尝试在 this.http.get('https://httpbin.org/get')
和 this.http.post('https://httpbin.org/post', null)
之后添加以下内容:
.subscribe(
res => console.log(res),
err => console.log(err),
() => console.log("Done"),
);
编辑
本来没提,其实最好订阅returnshttp方法的函数,而不是订阅调用本身。根据经验,我发现可能会出现一些异常行为