找不到REST Web服务404 - ColdFusion 11

时间:2015-01-27 19:31:02

标签: coldfusion coldfusion-10 coldfusion-11

我在现有的REST cfc中创建了一个新函数,但是当我尝试调用它时,我收到404错误,其余函数正在运行。所有这些功能都遵循与我要进一步向下连接的结构相同的结构而没有任何问题。

我看到了像我这样的另一篇文章,但我没有找到任何答案。这是其他帖子here

的链接
<cfcomponent restpath="student" rest="true">
<cffunction name="npssummary" access="remote" output="false" returntype="any" httpmethod="get" restpath="npssummary" produces="application/json">   

        <cfquery name="nps_summary" datasource="dpsigweb2">
            select top 10 * from contact
        </cfquery>

        <cfreturn serializeJSON(nps_summary,"struct")>

  </cffunction>
</cfcomponent>

这就是我的称呼方式

<cfhttp url="http://dev.example.com/rest/IIT/student/npssummary" method="get">
<cfset results = "#cfhttp#">
<cfdump var="#results#">

当我试图直接在浏览器中调用该函数时,我收到了预期的结果。

此外,每次我对组件进行更改时,我都会使用此函数来重置REST服务,它似乎正在按预期工作。

<cftry>
<cfset restInitApplication("Z:\Sites\testSites\API\","IIT")>

<cfcatch type="any">
    <cfdump var="#cfcatch#">
</cfcatch>
</cftry>

1 个答案:

答案 0 :(得分:1)

This is a browser limitation

  

Microsoft Internet Explorer的最大统一资源定位符(URL)长度为2,083个字符。 Internet Explorer的最大路径长度为2,048个字符。此限制适用于POST请求和GET请求URL。

     

如果您使用的是GET方法,则最多限制为2,048个字符,减去实际路径中的字符数。

     

但是,POST方法不受提交名称/值对的URL大小的限制。这些对在标头中传输,而不是在URL中传输。

     

RFC 2616,&#34;超文本传输​​协议 - HTTP / 1.1,&#34;没有指定任何URL长度要求。