/** POST: add a new hero to the database */
addHero (hero: Hero): Observable<Hero> {
return this.http.post<Hero>(this.heroesUrl, hero, httpOptions)
.pipe(
catchError(this.handleError('addHero', hero))
);
}
但我很困惑为什么Observable会在POST请求中返回英雄数据,或者根本不是成功代码的数据。我理解为什么GET请求会使用类型断言,但不太明白这是如何工作的。
耶!如果是这样,则post
将返回一个成功代码。我不知道文件中这样提到的实际原因是什么,但我会写出我理解的。(很难写在评论中:)
POST请求的响应将取决于如何实现API
。例如,您的数据库为任何POST请求设置了一些默认值,例如createDate
的hero
,您希望在您的angular应用程序中使用createDate。你会怎么做?您将从API
发送英雄数据。
就文档中所包含的内容而言,它们使用的是mock-api
。如果要记录响应,您将看到204
的状态。默认情况下,在此状态下,不发送正文。但是如果您将模拟服务配置为:
HttpClientInMemoryWebApiModule.forRoot(InMemHeroService, {put204: false, post204: false})
TP5提供了很多请求判断的方法,如下: // 是否为 GET 请求 $request->isGet(); // 是否为 POST 请求 $request->isPost(); // 是否为 PUT 请求 $request->isPut(); // 是否为 DELETE 请求 $request->isDelete(); // 是否为 Ajax 请求 $request->isAjax();
请参考:http://www.kancloud.cn/manual/thinkphp/1722
TP6提供了很多请求判断的方法,如下: // 是否为 GET 请求 $request->isGet(); // 是否为 POST 请求 $request->isPost(); // 是否为 PUT 请求 $request->isPut(); // 是否为 DELETE 请求 $request->isDelete(); // 是否为 Ajax 请求 $request->isAjax();
获取请求类型 在很多情况下面,我们需要判断当前操作的请求类型是GET、POST、PUT、DELETE或者HEAD,一方面可以针对请求类型作出不同的逻辑处理,另外一方面有些情况下面需要验证安全性,过滤不安全的请求。 请求对象Request类提供了下列方法来获取或判断当前请求类型: 用途 方法 获取当前请求类型 method 判断是否GET请求 isGet 判断是否POST请求 isPost 判断是否
我想连接到http://api.themoviedb.org,以便执行GET请求。由于我使用的浏览器(离子服务-l)我得到CORS错误。为了避免CORS错误,我尝试使用JSONP,但没有成功。 以下是我所做的: > 从'@角/公共/超文本传输协议'导入{HttpClientModuelHttpClientJsonpModuel}; ... 导入:[BrowserModuelIonicModule.