簡體   English   中英

如何為 React Native Bare 工作流指定重定向 URI

[英]How to specify the Redirect URI for React Native Bare workflow

我剛剛開始使用 Bare 工作流構建一個 React Native 移動應用程序(不使用 Expo 框架)。 我已經成功地在我的應用程序上集成了登錄和注銷系統與 react-native-auth0 依賴項。 但是,我正在努力使用 API 授權來獲取經過身份驗證的用戶的令牌,以便控制對每個端點的訪問。

我正在根據 Auth0 文檔使用 PKCE 遵循授權代碼流程。 除了前面在標題中提到的重定向 uri 之外,我幾乎所有東西都運行良好。

我嘗試使用expo-auth-session依賴項手動指定 uri,如下所示。

const redirectUri = AuthSession.makeRedirectUri({
    native: `${REDIRECT_URI}`,
    useProxy,
});

const params = {
    audience: `${AUTH0_API_AUDIENCE}`,
    scope: ['openid', 'profile', 'email', 'offline_access'],
    response_type: 'code',
    client_id: `${AUTH0_CLIENT_ID}`,
    redirect_uri: redirectUri,
    code_challenge: `${code_challenge}`,
    code_challenge_method: 'S256',
    state: `${state}`
};

但是,它返回錯誤消息說

錯誤:找不到默認返回 URL。 如果您使用的是裸工作流,請提供options.returnUrl getDefaultReturnUrl@http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=false:179940:24 startAsync$@http://10.0.2.2:8081/index.bundle?platform=android&dev=true&minify=錯誤:177411:84

我已經用npx uri-scheme list檢查了我的 uri。 目前,我有一個${applicationId}:// 這是否等同於redirect_uri,不是嗎?

我還檢查了Auth0.Android 不過這個肯定和Android Native App開發有關吧?,反正? 以前使用過相同架構的人嗎? 我可以為使用 React Native 構建的 Android 應用程序指定重定向 URI。 我認為裸工作流不支持 AuthSession API,即使文檔強調,它也闡明了裸工作流的演練。 我試了一下,但是。 它不起作用並引發錯誤。

我相信這應該以本地方式完成??? Java?. 我正在努力尋找解決方案,甚至不知道在哪里看:我非常感謝您的幫助! :-)

免責聲明:我真的不熟悉 React Native(實際上也不熟悉移動設備),但我確實知道一些關於 OAuth 和 OIDC 的事情,並且我過去使用過 Auth0,所以這里有一些想法,希望對您有所幫助。

我已經用 npx uri-scheme 列表檢查了我的 uri。 目前,我有一個 ${applicationId}://。 這是否等同於redirect_uri,不是嗎?

根據 Auth0 文檔,回調 URL(即重定向 URL 到本地設備)應該看起來像 {YOUR_APP_PACKAGE_NAME}:// ${applicationId}:// {YOUR_APP_PACKAGE_NAME}://${YOUR_AUTH0_APP_NAME}.auth0.com/android/{YOUR_APP_PACKAGE_NAME}/callback ${applicationId}://不等同於重定向 URL,而只是它的前綴。

您是否嘗試過使用${applicationId}://{YOUR_AUTH0_APP_NAME}.auth0.com/android/${applicationId}/callback (將${YOUR_AUTH0_APP_NAME}替換為您的 Auth0 項目名稱的實際值)?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM