モジュラスでホストされている隕石アプリケーションがあります。
Modulus には API があります: https://api.modulus.io/
API コードはここでホストされています: https://github.com/onmodulus/modulus-cli/blob/master/lib/librarian/librarian.js#L361
API を使用してモジュラスのデプロイメントの 1 つにドメインを保存したいと考えています。
これが接続しようとしているコードであることはわかっています: https://github.com/onmodulus/modulus-cli/blob/master/lib/librarian/librarian.js#L361
librarian.project.saveDomains = function(projectId, domains, authToken, callback) {
if(checkInit(callback)) {
librarian._http.request(util.format('/project/%s/domains?authToken=%s', projectId, authToken), 'POST', domains, callback);
}
};
そして、私は API 呼び出しを行うのが初めてです。
meteor メソッドを使用して処理できる meteor アプリでサーバーから呼び出しを行う必要があると思いますが、API 呼び出しがどのように見えるべきかわかりません。
オンラインとSOで調査しました。運が悪く、API 呼び出しの経験不足と戦っているので、少し方向から見ています。
meteor の http パッケージを追加しました。
meteor add http
以下はボールパークにあると思いますが、現在は機能していません。
役職
javascript
//save arguments object to options variable
var options = {
projectId: xxx,
domains: ["example.com"],
authToken: settings.Modulus.authToken
}
//call meteor method from client
Meteor.call('saveDomainToModulus', options, function(error, result) {
if (error)
console.log(error)
else
console.log(result)
}
});
//on server
Meteor.methods({
"saveDomainToModulus": function(options) {
var apiEndpoint = "http://api.modulus.io/project/%s/domains?authToken=" + options.authToken;
HTTP.post( apiEndpoint,
options.projectId,
options.domains,
options.authToken,
function( error, response ) {
if ( error ) {
console.log( error );
} else {
console.log( response );
}
});
}
})
解決策に近づき始めているように感じますが、経験豊富な方からフィードバックがあればお知らせください。