asp.net-web-api – Net Web API – 如何在Get上传递URL作为输入
发布时间:2020-12-15 21:01:13 所属栏目:asp.Net 来源:网络整理
导读:我试图从Angular REST调用将URL作为输入参数传递给ApiController. URL作为查询字符串(这是SharePoint中的提供商托管应用程序,我需要URL来查询SP FWIW). 这是ApiController中的方法签名: // GET: api/ProjectSite/5public IEnumerableProjectSite Get(string
我试图从Angular REST调用将URL作为输入参数传递给ApiController. URL作为查询字符串(这是SharePoint中的提供商托管应用程序,我需要URL来查询SP FWIW).
这是ApiController中的方法签名: // GET: api/ProjectSite/5 public IEnumerable<ProjectSite> Get(string id) { return ProjectSite.GetAllProjectSites(id); } 这是我在Angular中进行调用的地方: var spUrl = "'" + getParameterByName("SPHostUrl") + "'"; var queryUrl = "/api/ProjectSite/" + encodeURIComponent(spUrl); return $http.get(queryUrl); 这会生成一个如下所示的GET请求: https://localhost:12345/api/ProjectSite/https%3A%2F%2Fcompany.sharepoint.com%2Fsites%2Fsite_dev%2Fweb 当我这样做时,我得到’HTTP 400(错误请求)’.如果我停止在Angular代码中的断点并将输入参数更改为一个简单的字符串(例如’asdf’),则会进行REST调用,并且我会看到Api被调用.如果我不更改字符串并在Get Api方法中放置断点,则不会到达断点,表明代码在路由引擎中的某处爆炸. 我没有得到的是,虽然它的编码,我试图传递的字符串应该仍然被视为一个字符串,对吧?我也尝试将输入更改为Uri,但这似乎不起作用(并且Uri未列为支持的输入类型,无论如何). 有谁知道如何传递URL作为输入参数? 解决方法
您是否尝试使用查询字符串调用它?
var queryUrl = "/api/ProjectSite?id=" + encodeURIComponent(spUrl); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 用于为基于Razor的View编写单元测试的指针
- asp.net – 部署后初始加载时出现奇怪的log4net引用错误
- asp.net – IE在IIS7中打开脚本,打开静态压缩
- asp.net-mvc – 预编译Hogan.js模板服务器端ASP.NET MVC
- asp.net – 授权和验证对静态内容的访问(pdf)
- asp.net-mvc – 使用SaveAs对话框下载Rotativa
- asp.net-mvc – Html.CheckBox即使模型值为true也不进行检查
- ASP.NET Core的配置(5):配置的同步[ 实例篇]
- 在Asp.net mvc5中使用用户名而不是电子邮件身份
- ASP.NET MVC4 WebApi路由中包含文件名
推荐文章
站长推荐
- asp.net-mvc-3 – MVC3 Webgrid Paging在Jquery对
- UnitOfWork知多少
- 从Asp.Net MVC 6 API返回JSON错误
- asp.net-mvc – 免费.Net云主机与SQL Server数据
- asp.net – 如何从HTML到ASPX页面POST FOR FORM
- asp.net-mvc-4 – 工作单元和通用存储库与实体框
- 验证 – 关于构建asp.net mvc应用程序的建议
- asp.net-mvc – RedirectToAction导致在ASP.NET
- asp.net – OnClientClick中的服务器标记
- asp.net-mvc – 使用Url.action调用控制器方法时
热点阅读