我们有一个使用HttpSelfHostServer的windows服务,它大部分时间都可以工作,然而,我们最近发现了一个bug,其中“长”urls总是被作为无效的urls抛出。
一个“好”url的例子:http://localhost:35353/api/files/ZmlsZTovLy9DOi9Vc2Vycy9kYXZpZC9Eb3dubG9hZHMvU2FtcGxlIERvY3VtZW50cy9BWklQUEVSXzAwMDc0OTUuaHRt/permissions
一个“无效”url的例子:http://localhost:35353/api/files/ZmlsZTovLy9DOi9Vc2Vycy9kYXZpZC9Eb3dubG9hZHMvU2FtcGxlIERvY3VtZW50cy9BQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjEyMzQ1Njc4OTBBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjEyMzQ1Njc4OTAvQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoxMjM0NTY3ODkwL0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMTIzNDU2Nzg5MEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMTIzNDU2Nzg5MC50eHQ=/permissions
我注意到,当/files/ {file} /permissions之间的加密字符串{file}超过260个字符时,它会失败,但当它少于260个字符时,它就可以工作。260是硬限制吗?或者有什么方法可以增加这个限制吗?谢谢你的帮助!
发布于 2013-10-22 18:44:07
这听起来像是MAX_PATH被用来约束URLs -这是一个文件系统限制,我猜它已经内置于自托管服务器中了。
查看“最大路径长度限制”:http://msdn.microsoft.com/en-us/library/aa365247.aspx
发布于 2013-10-24 18:01:05
要指定扩展长度路径,请使用"\?\“前缀。例如,
\?\d:\超长路径
而不是
路径D:\
发布于 2013-10-29 04:59:50
我没有使用自托管API的经验,但它可能在URL或查询字符串的长度方面有问题,所以您可能希望查看以下内容:request exceeds the configured maxQueryStringLength when using [Authorize]
https://stackoverflow.com/questions/17368703
复制相似问题