ASP .NET Rest APIからNSWAGを使用してjavascriptクライアントを生成しました。しかし、私はAPIメソッドを呼び出そうとしているときにいくつかのエラーを見つけています。未定義のプロパティ 'baseUrl'を設定できません
原因のエラーは次のとおりです。TypeError:未定義の 'baseUrl'プロパティを設定できません。私の角度コードで
var AuthClient = (function() {
function AuthClient($http, baseUrl) {
this.baseUrl = undefined;
this.http = null;
this.jsonParseReviver = undefined;
this.http = $http;
this.baseUrl = baseUrl !== undefined ? baseUrl : "";
};
AuthClient.prototype.login = function (auth) {
var _this = this;
var url_ = this.baseUrl + "/api/v1/auth/login";
var content_ = JSON.stringify(auth ? auth.toJS() : null);
return this.http({
url: url_,
method: "POST",
data: content_,
transformResponse: [],
headers: {
"Content-Type": "application/json; charset=UTF-8",
"Accept": "application/json; charset=UTF-8"
}
}).then(function (response) {
return _this.processLogin(response);
}, function (response) {
if (response.status)
return _this.processLogin(response);
throw response;
});
};
...}());
exports.AuthClient = AuthClient;
私がやっている:
var client = AuthClient('http://localhost:14959/');
var call = client.prototype.login(data);
を私はすでにアプリケーションをデバッグしている、それが機能AuthClientに入り、私はまた、これまでそれを変更しようとしましたが、問題が解決しません:
function AuthClient($http, baseUrl) {
this.baseUrl = baseUrl;
};
また、私はこのエラーを取得しています:Uncaught ReferenceError: exports is not defined
それはそれでか何かを持っている場合、私は知りません。単に無視しない場合。
エラートレース:この行は必要ありません
TypeError: Cannot set property 'baseUrl' of undefined
at AuthClient (RenterLogApiBackendClient.js:19)
at b.$scope.login (HomeController.js:16)
at fn (eval at compile (angular.min.js:1), <anonymous>:4:206)
at b (angular.js:16123)
at e (angular.js:26490)
at b.$eval (angular.js:17913)
at b.$apply (angular.js:18013)
at HTMLFormElement.<anonymous> (angular.js:26495)
at HTMLFormElement.dispatch (jquery-3.1.1.min.js:3)
at HTMLFormElement.q.handle (jquery-3.1.1.min.js:3)
私が言ったように、私はこれだけを試みました:function AuthClient($ http、baseUrl){ this.baseUrl = baseUrl; };同じエラーが発生しました –
提案は後方にあります。 'this.baseUrl = baseUrl ||でなければなりません。 ";"。 – mc10
@RuiQueirósはい、それは 'AuthClient'に2つのパラメータがあるからです。代わりに、 'AuthClient'の中に' baseUrl'をパラメータとして持つ別のメソッドを定義してください。 ANdは 'post'コールのためにそのメソッドを呼び出します –