{"action":"created","issue":{"url":"https://api.github.com/repos/NIFCloud-mbaas/UserCommunity/issues/906","repository_url":"https://api.github.com/repos/NIFCloud-mbaas/UserCommunity","labels_url":"https://api.github.com/repos/NIFCloud-mbaas/UserCommunity/issues/906/labels{/name}","comments_url":"https://api.github.com/repos/NIFCloud-mbaas/UserCommunity/issues/906/comments","events_url":"https://api.github.com/repos/NIFCloud-mbaas/UserCommunity/issues/906/events","html_url":"https://github.com/NIFCloud-mbaas/UserCommunity/issues/906","id":347743560,"node_id":"MDU6SXNzdWUzNDc3NDM1NjA=","number":906,"title":"Unity SDK でログイン認証時に 401 Unknown Error が発生する","user":{"login":"hirotakakatoh","id":10285754,"node_id":"MDQ6VXNlcjEwMjg1NzU0","avatar_url":"https://avatars3.githubusercontent.com/u/10285754?v=4","gravatar_id":"","url":"https://api.github.com/users/hirotakakatoh","html_url":"https://github.com/hirotakakatoh","followers_url":"https://api.github.com/users/hirotakakatoh/followers","following_url":"https://api.github.com/users/hirotakakatoh/following{/other_user}","gists_url":"https://api.github.com/users/hirotakakatoh/gists{/gist_id}","starred_url":"https://api.github.com/users/hirotakakatoh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirotakakatoh/subscriptions","organizations_url":"https://api.github.com/users/hirotakakatoh/orgs","repos_url":"https://api.github.com/users/hirotakakatoh/repos","events_url":"https://api.github.com/users/hirotakakatoh/events{/privacy}","received_events_url":"https://api.github.com/users/hirotakakatoh/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2018-08-06T00:09:56Z","updated_at":"2018-08-09T05:15:40Z","closed_at":null,"author_association":"NONE","body":"Unity SDK を 1.1.5 -> v3.2.3 にアップグレードした時に、ログイン認証時に 401 Unknown Error が発生します。\r\n\r\n現状では、\r\nUnity エディタで既存ユーザでログインした場合は問題ないようですが、iOS 端末で新規ユーザを作成する時に発生するようです。\r\nダッシュボードの会員管理にはレコードは作成されていないようです。\r\n\r\n同じような症状で解決できた方がいらっしゃいましたら、解決方法を教えていただけませんでしょうか？\r\n\r\n他に必要な情報があれば、お申し付けください。\r\n\r\nよろしくお願いします。\r\n\r\n-----\r\nurl】:https://mb.api.cloud.nifty.com/2013-09-01/login?password=[UUID]&userName=[password と同じ  UUID]\r\n【type】:GET\r\nNCMB.NCMBUser:_ncmbLogIn(String, String, String, NCMBCallback)\r\n \r\n(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)\r\n\r\n【StatusCode】:401\r\n【Error】:NCMB.NCMBException: Unknown Error\r\n【ResponseData】:\r\nNCMB.<_ncmbLogIn>c__AnonStorey1:<>m__0(Int32, String, NCMBException)\r\nNCMB.Internal.<SendRequest>c__Iterator0:MoveNext()\r\nUnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)\r\n \r\n(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)\r\n\r\n[DEBUG AFTER CONNECT] Error: Unknown Error\r\nNCMB.<_ncmbLogIn>c__AnonStorey1:<>m__0(Int32, String, NCMBException)\r\nNCMB.Internal.<SendRequest>c__Iterator0:MoveNext()\r\nUnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)\r\n \r\n(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)"},"comment":{"url":"https://api.github.com/repos/NIFCloud-mbaas/UserCommunity/issues/comments/411639293","html_url":"https://github.com/NIFCloud-mbaas/UserCommunity/issues/906#issuecomment-411639293","issue_url":"https://api.github.com/repos/NIFCloud-mbaas/UserCommunity/issues/906","id":411639293,"node_id":"MDEyOklzc3VlQ29tbWVudDQxMTYzOTI5Mw==","user":{"login":"hirotakakatoh","id":10285754,"node_id":"MDQ6VXNlcjEwMjg1NzU0","avatar_url":"https://avatars3.githubusercontent.com/u/10285754?v=4","gravatar_id":"","url":"https://api.github.com/users/hirotakakatoh","html_url":"https://github.com/hirotakakatoh","followers_url":"https://api.github.com/users/hirotakakatoh/followers","following_url":"https://api.github.com/users/hirotakakatoh/following{/other_user}","gists_url":"https://api.github.com/users/hirotakakatoh/gists{/gist_id}","starred_url":"https://api.github.com/users/hirotakakatoh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirotakakatoh/subscriptions","organizations_url":"https://api.github.com/users/hirotakakatoh/orgs","repos_url":"https://api.github.com/users/hirotakakatoh/repos","events_url":"https://api.github.com/users/hirotakakatoh/events{/privacy}","received_events_url":"https://api.github.com/users/hirotakakatoh/received_events","type":"User","site_admin":false},"created_at":"2018-08-09T05:15:40Z","updated_at":"2018-08-09T05:15:40Z","author_association":"NONE","body":"goofmint さん\r\nあれから調べたところ、どうも v1.x 系と v3.x 系で NCMBException の ErrorCode の内容が違うようでした。\r\n401 エラー自体は、旧 SDK でも同じだったのですが、ErrorCode の内容が変わっていたため、意図した処理がされていなかったようです。\r\n\r\n私が実装した処理は、\r\n・セッション切れの可能性があるのでアプリ起動時に一旦ログアウトさせる(ログアウト処理の可否は問わない)\r\n・アプリ側が持っているユーザ情報でログインする\r\n　・ログインが成功した場合は終了\r\n　・ログインが失敗した場合で、かつ、ErrorCode が E401002(ID/パスワード間違い) だった場合は、新規ユーザ登録をする\r\nという処理ですが、ログインが失敗した場合の ErrorCode が v3.x 系の SDK の場合はエラーコードではなく、ステータスコード(今回は 401)が入っているようで、ErrorCode の比較に失敗していたようです。\r\n\r\n試しに v1.x 系の SDK で新規ユーザ状態で起動したところ、上記の処理で問題なく実行ができました。\r\n\r\n結果として、401 を返すこと自体は問題はなかったですが、ErrorCode の内容が REST API のエラーコードではなく、ステータスコードに変わっていたことが問題だったようです。\r\n\r\nおそらくこれが原因だと思いますので、もう少し確認してみて、問題がなければ解決としたいと思います。\r\n\r\n解決へのヒントをいただき、大変助かりました。\r\n\r\nありがとうございました。\r\n"}}
{"actor":{"display_login":"hirotakakatoh"}}