Yeni JIRA sorunları oluşturmak için Node.js uygulamasında bir istemci uygulaması yapıyorum ve OAuth kullanarak kullanıcıların kimliğini doğrulamak istiyorum. Atlassian doktorları, Jira ve Oauth'un yeni gelenleri için oldukça kötü. Bu yüzden, JIRA uygulama bağlantısının nasıl kurulacağını ve OAuth üzerinden Jira'ya bağlanan düğümde temel bir uygulamanın nasıl oluşturulacağını açıklayan tek bir örnek arıyorum. Başka nereye bakacağından emin değilim. (JIRA v6.0.4 kullanıyorum).Node.JS
Node.JS
cevap
Brian'ın da bahsettiği Atlassian Repo'da bir example for Node.JS with OAuth var. Ben 2 aşamalı kimlik doğrulama için olduğunu düşünüyorum.
Sizin tarafından önceden ayarlanmış bir önceden görüşülmüş tüketici anahtarına gereksinim duyar. https://developer.atlassian.com/jiradev/api-reference/jira-rest-apis/jira-rest-api-tutorials/jira-rest-api-example-oauth-authentication
Bu repo ve kullanıcı çözümlerinin sorunlarını kontrol etmeyi unutmayın. Oldukça eski ve güncellenmesi gerekiyor! – Mouneer
Here's a blog describing node.js and jira authentication using Oauth
Bir ekspres çerçevede ise: Burada yapılandırma dosyasında kaydedebilen bir belirteç edinme bir örnektir. Aşağıdaki kodun bir kısmını yapıştırıyorum.
var base_url = "YOUR_JIRA_BASE_URL"; //example https://test.atlassian.net
app.get('/jira', function(req, res) {
var oa = new OAuth(base_url + "/plugins/servlet/oauth/request-token", //request token
base_url + "/plugins/servlet/oauth/access-token", //access token
"mykey", //consumer key
"YOUR_PEM_FILE_CONTENT", //consumer secret, eg. fs.readFileSync('jira.pem', 'utf8')
'1.0', //OAuth version
"http://localhost:1337/jira/callback", //callback url
"RSA-SHA1");
oa.getOAuthRequestToken(function(error, oauthToken, oauthTokenSecret) {
if (error) {
console.log(error.data);
response.send('Error getting OAuth access token');
} else {
req.session.oa = oa;
req.session.oauth_token = oauthToken;
req.session.oauth_token_secret = oauthTokenSecret;
return res.redirect(base_url + "/plugins/servlet/oauth/authorize?oauth_token=" + oauthToken);
}
});
});
Kodun herhangi bir kısmı hakkında herhangi biri karıştıysa, bu yanıta yorum ekleyebilirsiniz.
Herhangi bir başarı elde ettiniz mi? Atlassian'ın Bitbucket'inde bir Node.js örneği var: https://bitbucket.org/atlassian_tutorial/atlassian-oauth-examples. – Brian
Bu cevaba bir göz atın - sizin için yararlı olabilir: http://stackoverflow.com/a/19116334/129815 –