1

私は、Salesforceデータを処理し、認証にoauth2を使用するBlackBerryJavaベースのアプリを持っています。ユーザーがsalesforceoauthページの承認/拒否にアクセスしたら、[承認]ボタンをクリックするとsalesforce 404ページが表示されるという苦情が寄せられるまで、問題なく機能していました。

デバッガーをbbシミュレーター(OS7)に接続したところ、salesforce oauth2ユーザーエージェントフローを介した認証/承認の最終段階でACCEPTボタンを押すと、salesforceにPOSTが行われるまですべてが正常に機能していることがわかりました。この時点で、投稿は成功し、応答本文には、document.location.href割り当てを実行するだけの小さなJavaScriptブロックを含むマークアップが含まれ、ブラウザーに新しいURLに移動するように強制します。URLが期待したものではないことに気づきました-redirect_uriコールバックアドレス+アクセストークンなどのデータがその末尾に追加されていることを期待していました(sf oauth2のドキュメントによる)。

たとえばクロームで同じフローを実行すると、投稿後のURLが期待どおりになります。これはすべてうまく機能していたので、なぜ突然機能しなくなるのか混乱しています。Salesforceが2011年後半にoauth2の実装を少し変更したと聞いたので、方法はわかりませんが、これによってクライアントが壊れたのではないかと思います。

実験として、埋め込まれたBrowserFieldを除くすべてのコードを削除し、ドキュメントに従ってコンシューマーキーと他のさまざまな値を組み合わせて構築されたoauth URLに移動しましたが、クリックした時点で404ページで失敗しますログインに成功した後の承認ボタン。

組み込みのbbブラウザで同じブートストラップoauthURLを試してみると、完全な認証フローが正常に機能し、最終的にアクセストークン情報が追加された最終的なコールバックURLにリダイレクトされます。

BrowserField(field2パッケージから)でのoauth2ユーザーエージェントフローに問題があった人は他にいますか?

4

2 に答える 2

2

「scope=mobile」パラメータを使用してみましたか?このパラメーターを使用すると、ブラックベリー用に最適化された非常に単純化されたoauthフローが表示されます...一般的に、iOS/Android用に設計されたより豊富なフローを通過するのに問題があることがわかりました。そうは言っても、BB7で問題が発生しているとは聞いたことがありません...5シリーズと場合によっては6シリーズのみ

それが失敗した場合、私たちと一緒にサポートケースを開くことができますか?

于 2012-01-05T18:59:16.990 に答える
1

OAuth の後で何にアクセスしようとしているかに応じて、display=mobile" " と " " (スペースを入れて)も試してください。scope=api web

于 2012-01-05T19:02:44.573 に答える