我已经在Kinvey中创建了一个数据库,并且试图通过按钮上的onclick事件加载数据。我试图用console.log从promise的响应中查看是否可以找回该对象,但是它代替了一个对象,却给了我这个错误:
错误:“您请求中的Authorization标头格式错误。Authorization标头应包含两个由空格分隔的部分:类型(Basic或Kinvey)和以base64编码的身份验证字符串。
由于我已经有一个Authorization标头,所以我的GET请求有什么问题,为什么它返回此错误?
这是我的html:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Blog</title>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
</head>
<body>
<h1>All Posts</h1>
<button id="btnLoadPosts" onclick="attachEvents()">Load Posts</button>
<select id="posts"></select>
<button id="btnViewPost">View</button>
<h1 id="post-title">Post Details</h1>
<ul id="post-body"></ul>
<h2>Comments</h2>
<ul id="post-comments"></ul>
<script src="./blog.js"></script>
</body>
</html>
和我的JavaScript:
function attachEvents() {
const URL = 'https://baas.kinvey.com/appdata/kid_Sy8W2Z0Y7';
const USERNAME = 'Peter';
const PASSWORD = 'p';
const BASE_64 = btoa(USERNAME + ':' + PASSWORD);
const AUTH = {"Authorization" : 'Basic' + BASE_64};
$('#btnLoadPosts').on('click', loadPosts);
function loadPosts() {
$.ajax({
method: 'GET',
url: URL + 'posts',
headers: AUTH
}).then(function(response) {
cosole.log(response);
}).catch(function(error) {
console.log(error);
})
}
}
答案 0 :(得分:0)
您是否忘记在授权标头中的Basic之后添加空格?