use*_*840 2 javascript vue.js vue-resource
我正在查看以下vue-resource文档,该文档描述了如何设置配置:https: //github.com/vuejs/vue-resource/blob/master/docs/config.md
它说要使用通用授权值设置标头:
Vue.http.headers.common['Authorization'] = 'Basic YXBpOnBhc3N3b3Jk';
Run Code Online (Sandbox Code Playgroud)
我猜这个"基本的YXBpOnBhc3N3b3Jk"值只是一个例子,但是这个值是什么,应该用什么而不是它呢?
在同一页面上,我还看到了"root"的设置:
Vue.http.options.root = '/root';
Run Code Online (Sandbox Code Playgroud)
我理解这是指Web应用程序的Web URL.但是,为什么vue-resource需要我告诉它这个值呢?它用于什么?
通过向Vue.http.headers.common
对象添加标头,您可以告诉vue-resource在每个请求中添加这些标头.
您还可以为每个请求添加标头:
http({
url: '/someUrl',
method: 'GET',
headers: {
Authorization: 'Basic YXBpOnBhc3N3b3Jk'
}
})
Run Code Online (Sandbox Code Playgroud)
关于Authorization
示例中标头的值:它是带有用户名/密码的base64编码字符串.
window.atob('YXBpOnBhc3N3b3Jk') // => "api:password"
Run Code Online (Sandbox Code Playgroud)
如果在使用vue-resource时需要使用基本身份验证,则应提供自己的用户名/密码.
请注意,使用您的应用程序的每个人都可以查看用户名/密码.有关基本身份验证的详细信息,请参阅https://en.wikipedia.org/wiki/Basic_access_authentication.
root属性可以是REST服务的主要端点.代替:
http({
url: 'http://api.domain.com/v1/someRoute'
});
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令设置根端点:
Vue.http.options.root = 'http://api.domain.com/v1'
// will call http://api.domain.com/v1/someRoute
http({
url: '/someRoute'
});
Run Code Online (Sandbox Code Playgroud)