从其他域和计算机发布的 Web API 帖子
Web API Post from other domain and computers
我创建了一个新的基于Web-API的 asp.net。
如果我理解正确,您不能从其他域发布/获取。
我需要把这个 Web API 提供给我的朋友,他们使用 php/javascript/andriod/iphone,并能够允许他们 POST/GET 访问我的 Web API。
有没有办法使用用户/密码或类似的东西来获取 POST/GET?
注意我假设您使用的是webapi 2.2
这就是我要做的。 首先,按照本教程在 web api 中创建个人帐户:
http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api
这将允许您的用户使用您的 api 注册,并将安全地存储凭据。然后,可以在控制器或单个方法上使用"授权"属性(具体取决于要实现的目标)。
注册用户后,可以通过传入用户名和密码从令牌终结点请求访问令牌(在生产环境中确保使用 https)。收到令牌后,可以存储此客户端,并将其与请求的标头一起发送。
以此类推,直到 CORS。完成上述操作后,您可以通过执行以下操作将服务器设置为允许来自任何来源的所有跨域,使用 和 动词:
使用 nuget 包管理控制台发出以下命令:
Install-Package Microsoft.Owin.Cors -Version 2.1.0
在启动类(通常为 Startup.cs)中添加以下行:
app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
如果要更具选择性,可以创建自己的自定义策略。
注意:值得注意的是,浏览器只会在请求不简单的情况下发出预审请求(选项)。不简单的请求定义如下:
它使用 GET、HEAD 或 POST 以外的方法。 另外,如果使用开机自检发送内容类型不是的请求数据application/x-www-form-urlencoded, multipart/form-data, or文本/纯文本,例如,如果 POST 请求将 XML 有效负载发送到服务器使用应用程序/XML 或文本/XML,则请求是预检。
它在请求中设置自定义标头(例如,请求使用诸如 X-PINGOTHER 之类的标头)
(更多信息见此处:https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS)
应该就是这样了。
祝你好运。
for .NET Web API
set WebAPI basic authentications.
Articles in this issue
http://www.asp.net/web-api/overview/security/basic-authentication
设置"WebAPI 允许跨域"。 本期
的阿里克尔斯http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api
示例 获取 javascript AJAX 添加此行
beforeSend: function (xhr) {
xhr.setRequestHeader ("Authorization", "Basic "+btoa(username + ':'+password);
},
BTOA图书馆 https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/btoa
- Steam Web API:I'我不知道该如何处理这个看起来像哈希的url来生成图像
- 如何在visualstudio中调试web api时编辑javascript文件
- 将复杂对象从angular js传递到web api,它总是返回404
- 将文档上载到Web API
- 对/Token的ASP Web API调用间歇性
- 从其他域和计算机发布的 Web API 帖子
- Web API 调用在设备模式下失败
- Testing .NET Web API from JavaScript
- 将日期作为从 Web API 到 angularJS 的 json 响应
- 获取 Spotify 用户 [Web API] 当前播放的曲目名称
- 在我的 Web API 中无法获取我的自定义标头
- Json 参数强制转换继承 Web API 2.
- 使用来自AngularJS的Web API JSON响应-错误:应为和数组,但得到了一个对象
- Javascript in Visual studio Web Api
- 获取AJAX中未定义的值(x),web api
- Web API在JSON调用上返回XML
- 将JSON字符串发布到WEB API
- 如何通过AngularJS$http从ASP.Net Web API 2获取访问令牌
- 使用ASP.Net MVC Web Api将JSON数据导出到Excel工作表
- 从mvc web api httpresponse生成csv,并通过angularjs接收下载