【问题标题】:Checking ASP.NET Membership Authentication from Browser Extensions using JavaScript使用 JavaScript 从浏览器扩展检查 ASP.NET 成员身份验证
【发布时间】:2013-05-24 09:30:03
【问题描述】:

使用 JavaScript 从浏览器扩展检查 ASP.NET 成员身份验证

嗨, 我有一个使用带有 OAuth/OpenID 的 ASP.NET 成员资格的网站 [Visual Studio 2012 网站]。现在我需要创建一个浏览器扩展 [Using Crossrider.com APIs for Chrome, IE, Safari etc.] 这将使登录的 [我的网站] 用户能够在单击按钮时从浏览器扩展中为 URL 添加书签并将 URL 保存到我网站中使用 JavaScript 的数据库。然后,该网站可以在某些 DataGrid 中显示登录用户的书签 URL。

现在我的问题是: 1. 最好的方法是什么? 2. 你如何使用 JavaScript 从浏览器扩展中检查用户是否通过了身份验证? 3. 如何将已登录用户的书签 URL 保存到我网站中的数据库?

【问题讨论】:

    标签: asp.net membership add-on crossrider


    【解决方案1】:

    如果我理解正确,您希望扩展按钮的事件处理程序将活动页面的 URL 发送到您的网站。通常,您可以通过使用appAPI.tabs.onTabSelectionChanged 捕获活动标签的URL,然后使用appAPI.request.get(或post)将数据发送到您的网站数据库来实现此目的。

    关于用户凭据,假设您在扩展程序中对用户进行身份验证,您可以使用appAPI.db.setget 检索数据)将凭据保存到本地数据库,并将其作为保存请求的一部分发送网址。以下代码展示了原理思想:

    background.js 文件中,实现按钮处理程序并将 URL 保存到您的站点:

    appAPI.ready(function() {
      var activeUrl = null;
    
      // Keep track of the active tab's URL
      appAPI.tabs/onTabSelectionChanged(function(tabInfo) {
        activeUrl = tabInfo.tabUrl;
      });
    
      // Configure the extension's button
      appAPI.browserAction.setResourceIcon('icon.png');
      appAPI.browserAction.click(function() {
        // Send bookmark to your website
        appAPI.request.post({
          url: <YOUR_WEBSITE_URL>,
          postData: {
            bookmark: activeUrl,
            token: appAPI.db.get('userToken'); // User Credentials
          }
        });
      });
    });
    

    extension.js 文件中,将用户凭据保存到扩展程序的数据库中:

    appAPI.ready(function($) {
      // Your authentication code
      ...
      userToken = ...;
      // Save the credentials
      appAPI.db.set('userToken', userToken)
    });
    

    如果您需要进一步的帮助并认为 stackoverflow 不是讨论细节的合适论坛,请发送电子邮件至我们的支持团队 (support@crossrider.com)。

    免责声明:我是 Crossrider 的员工

    【讨论】:

      猜你喜欢
      • 2018-08-09
      • 1970-01-01
      • 2012-07-05
      • 2015-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多