我试图弄清楚如何http://test:test@localhost:5984/mydb在CouchDB 1.3.1中使用基本身份验证(即).
在被褥中:
mydb["test"]和一个管理员["admin"]然后我只是测试连接.
使用curl:
curl GET http://localhost:5984/mydb
Run Code Online (Sandbox Code Playgroud)
401未经授权返回,这很好.
curl GET http://test:test@localhost:5984/mydb
Run Code Online (Sandbox Code Playgroud)
返回200,所以一切都按预期使用curl.
使用浏览器或$ .ajax:
两者都返回401网址http://test:test@localhost:5984/mydb.
所以,问题:
curl GET或使用$.ajax GET(或浏览器)有什么区别?它被称为跨源资源共享.基本上,浏览器可以对ajax调用进行限制.这是一项安全功能,不允许浏览器随意从任何地方加载资源.
在点击加载任意资源之后,您似乎希望能够这样做.但是,如果任何旧的JavaScript程序可以加载任何其他资源,有很多方法可以被劫持以注入代码或窃取信息.
CURL通过不受CORS的限制来解决这个问题.它只是提出你想要的任何旧请求.
此外,您可以通过查询localhost:5984/_session来启动会话,此时您将使用安全令牌cookie发送所有以下查询.jQuery.couch是一些常用函数的基本资源.
| 归档时间: |
|
| 查看次数: |
4009 次 |
| 最近记录: |