我们有一个使用HttpSelfHostServer的Windows服务并且它大部分时间都可以工作,但是,我们最近发现了一个错误,其中“长”网址始终被抛弃为无效。
“好”网址的示例:http://localhost:35353/api/files/ZmlsZTovLy9DOi9Vc2Vycy9kYXZpZC9Eb3dubG9hZHMvU2FtcGxlIERvY3VtZW50cy9BWklQUEVSXzAwMDc0OTUuaHRt/permissions
“无效”网址的示例:http://localhost:35353/api/files/ZmlsZTovLy9DOi9Vc2Vycy9kYXZpZC9Eb3dubG9hZHMvU2FtcGxlIERvY3VtZW50cy9BQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjEyMzQ1Njc4OTBBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjEyMzQ1Njc4OTAvQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoxMjM0NTY3ODkwL0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMTIzNDU2Nzg5MEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMTIzNDU2Nzg5MC50eHQ=/permissions
我注意到,当加密字符串{file},/ files / {file} / permissions之间大于260个字符时,它会失败但是当它更少时它会起作用。是260的硬限制还是有办法增加这个? 谢谢你的帮助!
答案 0 :(得分:2)
这听起来像MAX_PATH被用来约束URL - 这是一个文件系统限制,我想已经内置到自托管服务器。
请参阅此处的“最大路径长度限制”:http://msdn.microsoft.com/en-us/library/aa365247.aspx
答案 1 :(得分:1)
要指定扩展长度路径,请使用“\\?\”前缀。例如,
\\?\ D:\很长的路径
而不是
d:\路径
答案 2 :(得分:1)
我没有自托管API的经验,但它可能是URL或查询字符串长度的问题,因此您可能需要查看以下内容:request exceeds the configured maxQueryStringLength when using [Authorize]