2017-02-13 65 views
2

我在Azure API Management中发布了一些API,它们在幕后调用REST Web应用程序。大多数端点使用以下格式:Azure API Mgmt对路径/参数有长度限制吗?

https://company.azure-api.net/dom/ep/{pathParamVal}?{queryParamName}={queryParamVal} 

如果{queryParamVal}是这将导致URL长度超过350-400字一个很长的字符串,一切正常。但是,如果我指定与{pathParamVal}相同的字符串值,则会收到HTTP 400错误代码 - HTTP Error 400. The request URL is invalid.。我知道这与Azure有关,因为底层Web应用程序使用冗长的路径参数以及查询参数。

URL路径可以有多长时间有限制吗?

回答

2

URL路径可以有多长时间有限制吗?

根据我的经验,WebAPI路径的限制是260个字符,与Windows Maximum Path Length Limitation相同。URL的最大长度受不同浏览器的限制。有关不同浏览器中URL最大长度的详细信息,请参阅另一个SO thread

更新:

我做一个测试吧。如果长度为pathParamVal> 260,则会得到不好的请求。或者它工作正常。更多细节请参考截图。

  1. 如果pathParamval> 260的长度,那么它将得到400错误的请求错误。

enter image description here

  • 如果pathParamval = 260的长度,则它工作正常。
  • enter image description here

    +0

    我主要关心的路径长度,因为总长度可以是高得多,仍能正常工作,如果path参数值作为查询参数提供。 –

    +0

    我已经更新了答案,更多详细资料请参考 –

    +0

    这是可以增加的默认限制吗? –