encodeuriccomponent不能与Web API调用一起工作
encodeURIComponent Not Working with Web API Call
我在打这个电话时得到了一个404 Not Found
:
var url = rootWebApiUrl + '/folders/' + $scope.selectedServer.Name + "/" + serviceName;
$http.get(url) // the rest of this line doesn't matter for this issue
我认为也许使用encodeURIComponent
会有所帮助,但我得到相同的404 Not Found
错误:
var url = rootWebApiUrl + '/folders/' + $scope.selectedServer.Name + "/" + encodeURIComponent(serviceName);
这是Web API方法签名:
[Route("folders/{serverName}/{serviceName}")]
[HttpGet]
public IEnumerable<Folder> Folders(string serverName, string serviceName)
如果在调试时更改服务名称,则上面的第一个选项有效。原服务名称为Company Name Message Bus Manager 3.6 - MesFinishingEvents
。如果我将其更改为没有空格的东西,如snuh
,则Web API调用成功,我可以在Web API方法中进行调试。
如何在$http.get(url)
呼叫中传递原服务名称?
编辑:URL值:
使用带有空格的服务名:http://localhost:4153/api/services/folders/ServerName/Company%20Name%20Message%20Bus%20Manager%203.6%20-%20MesFinishingEvents
使用简单的服务名称:http://localhost:4153/api/services/folders/ServerName/snuh
当你的参数中有一个.
时,WebAPI控制器会挣扎,这里和这里。
你的方法调用将一直工作到:
http://localhost:4153/api/services/folders/ServerName/Company%20Name%20Message%20Bus%20Manager%203
及以上,如果周期不存在
最快的解决方案是添加尾斜杠。较长的解决方案是修改IIS中的站点HTTP处理程序。
相关文章:
- 当与全局标志一起使用时,Javascript Regex在后续调用中返回null
- 按钮上的数据加载消息无法与ajax调用一起工作
- 连锁调用和一起应用是什么意思
- 如何用JavaScript中的Ajax调用代替加载脚本文件(将YQL与JavaScript一起使用)
- Meteor 与 Session.set 和 jQuery 在一个调用中组合在一起
- Javascript 函数在与参数一起传递时无法调用
- 将立即调用的函数表达式 (IIFE) 与事件发射器一起使用
- 与 RTL 语言一起使用时字符串替换函数调用的顺序
- 调用事件侦听器 - 两种方式之一起作用,有什么区别
- 如何将模板与加载了从 ember.js 中的调用模板传递的数据的文本框一起使用
- 如何将setTimeout与立即调用的函数一起正确使用
- 与Recaptcha一起使用时,Ajax调用无法正常工作
- jquery:制作按钮click&json调用一起工作,但保持它们分离
- 尝试将React/Ajax调用与SpringMVC和Thymelaf一起使用
- Css更改不能与同步ajax调用一起工作
- 使jQuery函数与ajax调用一起工作
- promise如何与嵌套函数调用一起工作
- 在while循环中与ajax调用一起使用分页
- 将this.constructor与构造函数调用一起使用以访问静态属性时是否存在兼容性问题
- encodeuriccomponent不能与Web API调用一起工作