私はデフォルトとうまくすべてのセットアップを得たhttps://docs.microsoft.com/en-us/azure/app-service-mobile/app-service-mobile-dotnet-backend-how-to-use-server-sdkAzureのモバイルアプリは、リダイレクトのHTTP POSTは、AzureのActive Directory認証が有効になっているときにGETするために呼び出す
で発見Azureのモバイルアプリのバックエンドのチュートリアルの.NETの部分を通って行きますよ例TodoItemController
。コントローラメソッドPostToDoItem
にコードを追加して、プッシュ通知をinstructedと追加しました。
私はその後、ポストマンを使用して、簡単な新しいアイテムを入れてPOST呼び出しをテストした:
:私は私のXamarin.Formsでモバイルアプリを成功プッシュ通知を取得した際に
ただし、モバイルアプリケーションサービスでAzure Active Directory認証を有効にしているときに、「匿名リクエストを許可(アクションなし)」にしておくと、PostmanとのPOST呼び出しを送信できなくなりました。具体的には、AppサービスがPOSTリクエストを受け取ったように見えますが、すぐにリダイレクトして代わりにGETリクエストを生成します。これにより、コントローラのGetAllToDoItemsメソッドがPostToDoItemメソッドの代わりに呼び出されます。私は、ログ・ストリームでこれを参照してください。
> 2017-05-31T01:33:46 PID[4292] Verbose Received request: POST
> http://XYZ.azurewebsites.net/tables/TodoItem?ZUMO-API-VERSION=2.0.0
> 2017-05-31T01:33:46 PID[4292] Information Redirecting:
> https://XYZ.azurewebsites.net/tables/TodoItem?ZUMO-API-VERSION=2.0.0
> 2017-05-31T01:33:46 PID[4292] Verbose Received request: GET
> https://XYZ.azurewebsites.net/tables/TodoItem?ZUMO-API-VERSION=2.0.0
> 2017-05-31T01:33:46 PID[4292] Verbose [Routes(Preview)] No
> authorization configuration was found. 2017-05-31T01:33:46 PID[4292]
> Information Request, Method=GET,
> Url=https://XYZ.azurewebsites.net/tables/TodoItem?ZUMO-API-VERSION=2.0.0,
> Message='https://XYZ.azurewebsites.net/tables/TodoItem?ZUMO-API-VERSION=2.0.0'
> 2017-05-31T01:33:46 PID[4292] Information Message='TodoItem',
> Operation=DefaultHttpControllerSelector.SelectController
> 2017-05-31T01:33:46 PID[4292] Information
> Message='XYZService.Controllers.TodoItemController',
> Operation=DefaultHttpControllerActivator.Create 2017-05-31T01:33:46
> PID[4292] Information
> Message='XYZService.Controllers.TodoItemController',
> Operation=HttpControllerDescriptor.CreateController
> 2017-05-31T01:33:46 PID[4292] Information Message='Selected action
> 'GetAllTodoItems()'',
> Operation=ApiControllerActionSelector.SelectAction
匿名の要求が来るとき、私は何も処置せずに処理アズールを告げたので、私はこのPOSTの呼び出しは、私がOFFに設定アプリのサービスの認証を持っているときと同じように動作するように期待ただろう私はここで何かを誤解していますか?前もって感謝します!我々はHTTPプロトコルを使用して要求を送信する場合
ありがとうございました!私はこれをずっと見ていて、私がステップを進んでいる間にHTTPSではなくHTTPを使用していたことに気付かなかったのです! – Rowbear