【发布时间】:2021-08-19 18:24:48
【问题描述】:
我正在使用 cfhttp 和 Coldfusion 2021 对 API 进行基本 PATCH 方法调用。无论我尝试做什么,它都会将调用中的内容类型更改为 x-www-form-urlencoded 当它设置为使用 cfhttpparam 的应用程序/json。我试过 从另一个帖子添加这一行,没有效果。
<cfhttpparam type="CGI" encoded="false" name="Content_Type" value="application/json; charset=utf-8"<
我尝试将方法更改为 POST 并使用另一篇文章中的这一行。
<cfhttpparam type="header" name="X-HTTP-Method-Override" value="PATCH">
不管它仍然作为错误的内容类型发送什么,并且 api 忽略它作为结果,只是发回一个 200 OK,它收到了一个调用,但由于内容类型而没有更新数据。
我也尝试将正文作为变量和参数发送。结果一样。
有谁知道它为什么要切换内容类型或如何更正它?
这是我调用 API 的代码。
<cfhttp url="#loc.URLInsertID#"
method="PATCH"
timeout="999"
result="loc.AssetPandaGetObjectDataUpdate">
<cfhttpparam type="header" name="Accept" value="application/json" />
<cfhttpparam type="header" name="Content-Type" value="application/json" />
<cfhttpparam type="header" name="Mimetype" value="application/json" />
<!--- <cfhttpparam type="CGI" encoded="false" name="Content_Type" value="application/json; charset=utf-8"> --->
<!--- <cfhttpparam type="header" name="X-HTTP-Method-Override" value="PATCH"> --->
<cfhttpparam type="header" name="Authorization" value="#Bearer#">
<!--- <cfhttpparam type="body" name="body" value="#SerializeJSON(loc.bodyElements)#"> --->
#SerializeJSON(loc.bodyElements)#
</cfhttp>
【问题讨论】:
标签: coldfusion patch content-type cfhttp