太妃糖框架不接受期限“。”在网址

时间:2017-06-20 16:40:50

标签: coldfusion restful-url lucee taffy

当收到带有句号“。”的网址中的值时,Taffy不喜欢它并且不显示结果。例如:

端点网址:

mydomain.com/v1/devices/f15566dc799casdfc0b042642casdf7b1/registrations/pa.com.cnn.com

CFCOMPONENT:

<cfcomponent extends="taffy.core.resource" 
      taffy:uri="/v1/devices/{deviceid}/registrations/{registrationid}" >
  <cffunction name="get" access="public" output="false" >
    <cfset var retCode = 200>
     <cfreturn representationOf("/v1/devices/#arguments.deviceid#/registrations/#arguments.registrationid#").withStatus(retCode) />
  </cffunction>
</cfcomponent>

当我删除句点时,例如:

端点网址:

mydomain.com/v1/devices/f15566dc799casdfc0b042642casdf7b1/registrations/pacomcnncom 

结果:

"/v1/devices/f15566dc799casdfc0b042642casdf7b1/registrations/pacomcnncom"

1 个答案:

答案 0 :(得分:0)

有点晚了,但我认为您正在使用Taffy。

太妃糖,因为它解析文件扩展名以设置其响应的mime类型,因此URI中不能有多余的“点”。显然有解决方法。 。

您可以使用正则表达式来优化taffy_uri。
https://github.com/atuttle/Taffy/wiki/Custom-token-regular-expressions

我已经尝试过了,但是没有成功,选择不使用URI上要求有效电子邮件地址的端点。而是在POST正文中发布电子邮件地址。

更多信息在这里 https://groups.google.com/forum/#!msg/taffy-users/HbYCeCvuTLA/1-eco35pAwAJ;context-place=forum/taffy-users

B。