Facebookのカスタム認証を使用して、ユーザーがアプリサービスにログインできるようにしています。私が働いていた次のコードを使用していAzureモバイルアプリは、ログインに成功しても401(Unauthorized)を返します。
:「InvokeApiAsync」
「要求を完了できませんでした(無許可)。Microsoft.WindowsAzure.MobileServices.MobileServiceInvalidOperationException」を呼び出すとき残念ながら、私は次のエラーを取得していますNuGetパッケージの1.xxブランチでは、このエラーメッセージが表示された後に更新されます。
Newtonsoft.Json.Linq.JObject jToken = new Newtonsoft.Json.Linq.JObject();
jToken.Add("access_token", token);
var user = await _mobileService.LoginAsync(MobileServiceAuthenticationProvider.Facebook, jToken);
var result= await _mobileService.InvokeApiAsync<GetContactListRequest, GetContactListResponse>("GetContactList", new GetContactListRequest());
LoginAsync部の動作およびユーザ変数は、トークンをユーザに(_mobileService.CurrentUserも同様に行い)を含みます。私は「InvokeApiAsync呼び出したときに、それは私が不正なエラーを取得していることだ。
モバイルサービス
[Authorize]
public class GetContactListController : ApiController
{
// POST api/CustomRegistration
public HttpResponseMessage Post(GetContactListRequest request)
{
try
{
return this.Request.CreateResponse(HttpStatusCode.OK, new GetContactListResponse());
}
catch (Exception ex)
{
return this.Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message);
}
}
}
任意のポインタ?
カスタム認証を使用していますか、または内蔵のFacebook認証を使用していますか?後者を使っているようです。アプリケーションログを有効にするとエラーが表示されますか? –
私はカスタム認証を使用しています。ここでは(成功した)LoginAsyncコールで使用しているfacebookトークンを取得しています – Bosch571