このリソースにアクセスするには完全な認証が必要です Unauthorized
銀行アプリでユーザーとインターフェースする場合、他のインターフェースは、accesstokenへのアクセスを提供し、postを介して提出され、すべてoauthプロトコルに基づいています。
例えば、インターフェースアドレス: https://test_Id:[email protected]/oauth/authorize
インターフェースを再取得した後、結果を取得できるかどうかテストしなければならないので、オンラインポスト投稿リクエストを使ってデータ取得のシミュレーションを行ったところ、結果は成功したので、問題はないはずだと考え、開発・コード作成を行いました。
しかし、そのコードでデータを取得することはできず、401ステータス、Unauthorizedというエラーメッセージが返され続けました。このリソースにアクセスするには、完全な認証が必要です。
リクエストヘッダ、エンコード、json、フォーム送信など、どのように設定しても同じエラーになりますが、ブラウザ上ではシミュレーションが動きます。
エラーメッセージを返します。
{
"timestamp":1510558350024,"status":401,"error":"Unauthorized",
"message":"Full authentication is required to access this resource",
"path":"/oauth/authorize"
}
どうすれば直るの?
我々は最初の与えられた接続アドレスを見て、このURLは明らかに2つのマッチ(:@)、クエリを持って、それが実際にアカウントとパスワードのログインであることが判明し、我々はブラウザで動作し、ブラウザは自動的にデフォルトでログインを解決します、そのコードは、それを記述する方法?
解決策
var tokenRequestParams = new SortedDictionary<string, string>
{
{"type", "authorization"}
};
var content = new FormUrlEncodedContent(tokenRequestParams);
var handler = new HttpClientHandler
{
Credentials = new NetworkCredential("test_Id", "test_secret")//account, password
};
var httpClient = new HttpClient(handler);
var data = httpClient.PostAsync("https://test_Id:[email protected]/oauth/authorize", content);
NetworkCredentialです。ネットワークでクレデンシャルを提供し、そのクレデンシャルを取得したユーザーのみが適切なサービスパーミッションにアクセスできるようになりますが、ここがポイントになります。
関連
-
C# string.format でのエラー: 入力文字列が正しい形式でない
-
C#高精度遅延コード実行時間(us/ns)
-
C#の面接質問100選(.net開発者必見)
-
C#でUSBデバイスを操作する方法
-
インデックスが配列の範囲外であった。
-
vs2010 can't debug, can't enter breakpoint, breakpoint is invalid.
-
System.InvalidOperationException: ConnectionString プロパティが初期化されていません。
-
エラーです。名前 'Encoding' は現在のコンテキストに存在しない ソリューション
-
C#の構文]をご覧ください。C#のリフレクション(アセンブリ)機構を説明する
-
AppDomainとAssemblyの動的なロードとアンロード
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
c# - デシリアライズ・エラー。入力文字列が正しい形式でない
-
C#の遅延関数の使用
-
C#とC++の型対応表まとめ
-
エラーです。コレクションが変更されました。列挙操作が実行されない可能性があります。
-
VS エラー LNK2005:**already defined in **.obj
-
HTTP エラー 500.22 - 内部サーバー エラー-IIS7 Asp.net2.0 ウェブサイトの実行ソリューションに失敗しました。
-
不正なフォーマットでプログラムを読み込もうとした場合の問題を解決します。
-
C#のビルドコードで、すべてのコードパスが値を返さないエラーが発生する
-
C# データベース操作エラー。この接続に関連付けられた開いているDataReaderがすでにあり、これを閉じる必要があります...
-
ASP.NET URL変更によるページ受け渡し