in action/messageHubFeedWeb.js [266:299]
function checkMessageHubCredentials(params) {
// listing topics seems to be the simplest way to check auth
var topicURL = params.kafka_admin_url + '/admin/topics';
var options = {
method: 'GET',
url: topicURL,
json: true,
headers: {
'X-Auth-Token': params.username.toLowerCase() == "token" ? params.password : params.username + params.password
}
};
const request = require('request-promise');
return request(options)
.then(body => {
console.log("Successfully authenticated with Message Hub");
var topicNames = body.map(topic => {
return topic.name
});
if (topicNames.indexOf(params.topic) < 0) {
return Promise.reject( 'Topic does not exist. You must create the topic first: ' + params.topic );
}
}, function (err) {
console.log(`Error: ${JSON.stringify(err)}`);
if (err.statusCode === 403) {
return Promise.reject( 'Could not authenticate with Message Hub. Please check your credentials.' );
}
});
}