如何使用 Chrome 扩展程序获取 Laravel 护照令牌?

     2023-03-10     56

关键词:

【中文标题】如何使用 Chrome 扩展程序获取 Laravel 护照令牌?【英文标题】:How to use Chrome extension get Laravel passport token? 【发布时间】:2019-11-29 18:48:51 【问题描述】:

我正在使用 Chrome 扩展访问 Laravel 护照 API。目前,Laravel 护照 API 已设置并正在运行。我尝试使用chrome.identity.launchWebAuthFlow 获取护照令牌但无法正常工作。 Google提供了一个例子,和我的用例不一样。

我有两个问题:

    根据Laravel的document,第一步是request an authorization code,API端点是/oauth/authorizeredirect_uri 应该是什么,因为它是 chrome 扩展而不是网站?

    用户批准请求后,我使用chrome.identity.launchWebAuthFlow 从 Passport 获取访问令牌。在 laravel 中它是一个 POST 请求,终点是/oauth/token。但是我试过chrome.identity.launchWebAuthFlow,是GET请求。

我可以使整个过程使用 PHP 而不是 Chrome 扩展。有什么建议吗?

【问题讨论】:

【参考方案1】:

根据launchWebAuthFlow 文档:

当提供者重定向到与https://app-id.chromiumapp.org/* 模式匹配的 URL 时,窗口将关闭,并将最终的重定向 URL 传递给回调函数。

例如,您可以使用以下代码:

let redirectUrl = chrome.identity.getRedirectURL('redirect');

chrome.identity.launchWebAuthFlow(
    url: `https://my.app.domain.com/oauth/authorize?client_id=xxx&response_type=code&scope=&redirect_uri=$redirectUrl`
, (redirectUrl) => 
    console.log(redirectUrl) // Redirect URL with oauth query params added
)

【讨论】:

我尝试并生成了redirectUrl。但是回调函数中的重定向 URL 仍然是未定义的。 我更改了laravel表oauth_clients中的重定向url,现在我可以得到授权码了。它不是访问令牌。如何获得令牌? 查看 laravel 文档的 Converting Authorization Codes To Access Tokens 部分:laravel.com/docs/master/passport#requesting-tokens 是的,它现在正在工作。我正在使用另一个 POST 请求来获取Access Token。感谢您的提问。

如何使用 Chrome 扩展程序自动保存 Google Chrome 开发者工具的网络面板日志?

】如何使用Chrome扩展程序自动保存GoogleChrome开发者工具的网络面板日志?【英文标题】:HowtoautomatesavingthelogofNetworkpanelofGoogleChromeDevelopertoolsusingChromeextension?【发布时间】:2016-08-1600:51:02【问题描述】:假设我打开一个网络应用... 查看详情

如何在 Chrome 扩展中使用 Javascript 获取文件大小?

】如何在Chrome扩展中使用Javascript获取文件大小?【英文标题】:HowtogetthefilesizeusingJavascriptinChromeextensions?【发布时间】:2011-03-3002:36:54【问题描述】:如何使用javascript获取写入chrome沙盒部分的文件大小?【问题讨论】:文件是... 查看详情

使用 chrome 扩展程序登录网站并从中获取数据

】使用chrome扩展程序登录网站并从中获取数据【英文标题】:Logintowebsitewithchromeextensionandgetdatafromit【发布时间】:2011-07-1806:19:16【问题描述】:我正在开发一个Chrome/Chromium扩展程序,它将从学校系统读取学校成绩和成绩。问题... 查看详情

如何在 chrome 扩展程序中获取选项卡通知,以便扩展程序可以在每次新通知到达时显示桌面警报

】如何在chrome扩展程序中获取选项卡通知,以便扩展程序可以在每次新通知到达时显示桌面警报【英文标题】:HowcanIgettabnotificationsinchromeextension,sothattheextensioncanshowdesktopalerteachtimewhennewnotificationarrives【发布时间】:2011-09-2808:22:5... 查看详情

在 chrome 扩展中,如何从当前 chrome 用户以外的 gmail 用户获取访问令牌?

】在chrome扩展中,如何从当前chrome用户以外的gmail用户获取访问令牌?【英文标题】:Inchromeextension,howtoobtainanaccesstokenfromagmailuserotherthancurrentchromeuser?【发布时间】:2019-04-2010:17:16【问题描述】:我创建了一个可在mail.google.com页... 查看详情

“CORS 策略已阻止访问获取”Chrome 扩展程序错误

...试从我的Chrome扩展程序的后台脚本中的外部API获取数据,使用消息传递从内容脚本发起调用并获取结果。我无法控制外部API。该API的文档说使用脚本标签来获取jsonp响 查看详情

如何在 Angular 4 中从 chrome.runtime.sendMessage 获取回调?

】如何在Angular4中从chrome.runtime.sendMessage获取回调?【英文标题】:howtogettheCallbackfromchrome.runtime.sendMessageinAngular4?【发布时间】:2018-07-3007:32:05【问题描述】:我真的是使用Angular4和Chrome扩展程序的新手,但我有这段代码可以将我... 查看详情

如何使用 JS Regex 从谷歌查询链接获取查询值? (Chrome 扩展)

】如何使用JSRegex从谷歌查询链接获取查询值?(Chrome扩展)【英文标题】:HowtouseJSRegexforgettingvalueofqueryfromagooglequerylink?(ChromeExtension)【发布时间】:2014-06-2722:17:37【问题描述】:我的数据包含浏览器历史记录中的一些链接。我... 查看详情

获取 URL 并保存 | Chrome 扩展程序

...类的东西:)【问题讨论】:注意:这里的所有答案都建议使用chrome.tabs. 查看详情

如何从 chrome 扩展访问 iframe?

】如何从chrome扩展访问iframe?【英文标题】:Howtoaccessaniframefromchromeextension?【发布时间】:2017-10-2216:49:18【问题描述】:如何让我的扩展程序像adblock一样在所有帧上工作?我尝试将"all_frames":true添加到我的清单文件中,... 查看详情

如何获取当前的 Chrome URL?

】如何获取当前的ChromeURL?【英文标题】:HowcanIgetthecurrentCromeURL?【发布时间】:2021-08-0219:37:03【问题描述】:我正在C#上编写Windows窗体应用程序,并尝试在此应用程序中从Chrome获取当前URL。我找到了活动进程,如果它的名称是... 查看详情

在 Chrome 扩展程序中,如何确保在使用 chrome-promise 的下一个承诺之前解决上一个承诺?

】在Chrome扩展程序中,如何确保在使用chrome-promise的下一个承诺之前解决上一个承诺?【英文标题】:InaChromeextension,howtoensurepreviouspromiseresolvesbeforethenextoneusingchrome-promise?【发布时间】:2017-11-0904:29:33【问题描述】:我一直在使... 查看详情

如何从 Chrome 扩展程序发送 HTTP GET 请求?

】如何从Chrome扩展程序发送HTTPGET请求?【英文标题】:HowdoIsendanHTTPGETrequestfromaChromeextension?【发布时间】:2014-09-2606:47:35【问题描述】:我正在开发一个使用GET方法发送HTTP请求的chrome扩展。如何使用参数par和值0向www.example.com发... 查看详情

json如何使用chromeidentityapi为chrome扩展程序设置用户身份验证(代码片段)

查看详情

如何在 chrome 扩展本机消息传递和 c# 应用程序之间发送/接收消息

】如何在chrome扩展本机消息传递和c#应用程序之间发送/接收消息【英文标题】:Howtosend/receivemessagebetweenchromeextensionnativemessagingandc#app【发布时间】:2016-05-2017:06:53【问题描述】:我是chrome扩展的新手,所以我需要通过使用原生消... 查看详情

如何检查 Chrome 扩展程序是不是已完全安装

】如何检查Chrome扩展程序是不是已完全安装【英文标题】:HowtocheckifChromeextensionhasfullyinstalled如何检查Chrome扩展程序是否已完全安装【发布时间】:2012-08-2108:55:44【问题描述】:使用ChromeWebStore内联安装(https://developers.google.com/chro... 查看详情

如何在 Chrome 扩展中使用 fontawesome?

】如何在Chrome扩展中使用fontawesome?【英文标题】:HowtousefontawesomeinChromeExtension?【发布时间】:2017-05-0509:18:23【问题描述】:我正在开发一个显示在特定网站上的GoogleChrome扩展程序。我想在我的chrome扩展中使用Fontawesome。当我尝... 查看详情

chrome扩展程序获取当前页面url和html内容

先交代一下manifest.json中的配置//引入注入脚本"content_scripts":[{"js":["content_script.js"],//在什么情况下使用该脚本"matches":["http://*/*","https://*/*"],//什么情况下运行【文档加载开始】"run_at":"document_start"}],{"permissions":["tabs"]}1. 查看详情