我正在尝试为特定用户提取各种存储库名称,并在html页面上填充组合框。我只能提取一个存储库名称。我怎样才能得到所有的名字?我到目前为止的代码:
$.ajax({
url:"https://api.bitbucket.org/2.0/repositories/abc",
username: "palld@bdbd.in",
password: "abcdef123456",
success: function(data){
console.log(data);
},
error: function(){
console.log("Connection did not go through");
},
type: 'GET'
});
在Java和python中编写类似的代码,我能够看到所有的存储库名称。任何帮助将不胜感激。
答案 0 :(得分:2)
即使您未对其API进行身份验证,Bitbucket也会向您发送一些数据。我怀疑API没有向您发送身份验证请求,并且jQuery在没有请求时根本不发送用户名和密码。
此代码显式将身份验证数据发送到API:
var reposUsername = "OWNER_OF_REPOS";
var authUsername = "YOUR_USERNAME";
var authPassword = "YOUR_PASSWORD";
$.ajax({
url:"https://api.bitbucket.org/2.0/repositories/" + reposUsername,
success: function(data){
console.log(data);
},
error: function(){
console.log("Connection did not go through");
},
type: 'GET',
headers: {
'Authorization': "Basic " + btoa(authUsername + ":" + authPassword)
}
});
(我完全可以肯定这段代码可以运行,因为我几分钟前用我自己的Bitbucket帐户测试过它。)
注意:请注意,将您的凭据存储在代码中是您不应该做的事情,因此在向公众发布代码/应用程序之前请三思而后行。
只需看看documentation Bitbucket为您提供的内容(尽管示例响应看起来有些奇怪)。
假设您的data
对象已经是JSON解析对象,您应该可以访问这样的respositiories(编辑:代码调整了提供的屏幕截图):
data.values
答案 1 :(得分:0)
解析JSON响应。如果它适用于Python或Java,那么它必须与您在JavaScript中处理响应的方式有关。也许您没有解析它,您需要将其转换为包含所需元素的正确JSON对象。
success: function(data){
console.log(JSON.parse(data));
},