1

ServiceStack カスタム CredentialsAuthProvider を使用してカスタム データベースに対して認証を行っていますが、C# クライアントとうまく連携します。また、jQuery 経由で (CORS が有効になっている別のドメインで) サービスの一部を呼び出せるようにする必要がありますが、$ajax から ([Authenticate] を使用した認証が必要な) サービスに資格情報を渡す方法がわかりません。または $post. 出来ますか?BasicAuthentication の使用例を確認しましたが、それはカスタム認証プロバイダーとカスタム データベースでどのように機能しますか?

編集:この質問の言葉遣いが不十分でした。私はすでに ServiceStack 側で認証されており、ss-id を持っています。別のドメインから何らかの方法でss-idを使用してjQueryを介して認証を必要とするサービスメソッドを呼び出す方法を理解しようとしています。

4

1 に答える 1

1

ちょっと大雑把に、HTML とフォーム/検証コードを削除しましたが、動作中のアプリから取得しました。

認証「dto」を入力し、必要な追加のカスタム プロパティを追加し、URL などを調整します。認証されると、保護されたサービスを呼び出すことができます。

var auth = {
    "userName": null,
    "firstName": null,
    "lastName": null,
    "displayName": null,
    "email": null,
    "password": null,
    "autoLogin": false,
    "continue": null
};
var request = $.ajax({
    type: "POST",
    url: '/auth',
    data: auth,
    contentType: "application/json;",
    dataType: "json"
});
request.done(function (data) {
    console.log(data);
    //redirect to secure service (assuming SS Razor view, or make other request)
    window.location.href = auth.continue;
});
request.fail(function (jqXhr, textStatus) {
    console.log("Request failed: " + textStatus);
    console.log(jqXhr);
});
};
于 2013-09-10T20:19:36.780 に答える