2016-07-26 13 views
0

私はapiを公開する晴れのモバイルアプリを作成しました。私はMicrosoftアカウント認証用のモバイルアプリを登録しました。モバイルアプリは、私がWindowsアカウントにログインした後、郵便配達員またはMicrosoftエッジからアクセスすると機能しています。
モバイルアプリはユニバーサルWindowsアプリのバックエンドです。私は定例のマイクロソフトの例(Add Authentication to UWA)に従った。サイトにログインするコードは正常に動作します(保存されている資格情報を取得するか、Microsoftアカウントサーバーにログインします)。資格情報は、MobileServiceClientのインスタンスのCurrentUserに格納されます。許可されていないWindows Azureモバイルアプリのユニバーサルアプリ

これはコントローラの1つの例です。 // myuriコントローラである辞書オブジェクト VAR応答が= client.InvokeApiAsync(myuri、System.Net.Httpを待つように、paramはクエリ文字列である:クライアントは、次のコードでのAPI呼び出し

[MobileAppController] 
    [Authorize] 
    public class TeamsController : ApiController 
    { 
    private GameNoteContext db = new GameNoteContext(); 
    [HttpGet, Route("api/Teams")] 
    // GET: api/Teams 
    public IQueryable<Team> GetTeams() 
    { 
        return db.Teams; 
    } 

.HttpMethod.Get、param);

生成された要求は正しいものであり、正しいヘッダーを持っているようです。私はそれらを郵便配達人にコピーすることができ、私は正しい応答を得る。しかし、私のクライアント(ビジュアルスタジオから実行)から、私は無許可になります。クライアントから送信されたリクエスト本文は次のとおりです。

X-ZUMO-FEATURES: AT,QS 
    X-ZUMO-INSTALLATION-ID: theidiscorrect 
    X-ZUMO-AUTH: atokenappearshere 
    Accept: application/json 
    User-Agent: ZUMO/2.1 
    User-Agent: (lang=Managed; os=Windows Store; os_version=--; arch=X86; version=2.1.40707.0) 
    X-ZUMO-VERSION: ZUMO/2.1 (lang=Managed; os=Windows Store; os_version=--; arch=X86; version=2.1.40707.0) 
    ZUMO-API-VERSION: 2.0.0 
    Accept-Encoding: gzip 

私は次に何を試していいのか分かりません。

+0

ログの助けを借りて、壊れていないものを修正するのに多くの時間を費やすことで、私は本当の問題を発見したと思います。 –

答えて

2

ポータルでアプリケーションログを有効にして、サーバー側のログを確認する必要があります。短いバージョンは、トークンが受け入れられていないということです。これは期限が切れているか、サーバー側に構成エラーがあるためです。ただし、サーバー側のログを見るまでは、そのことを知ることはできません。

Enable diagnostics logging for web apps in Azure App Serviceを参照してください。

+0

提案していただきありがとうございます。最後に、私の問題は認証ではなくモバイルクライアントで問題になります。私は適切なコードで新しい質問を投稿します。 –

関連する問題