gpt4 book ai didi

javascript - 解锁 Chrome 扩展中的高级功能

转载 作者:行者123 更新时间:2023-11-30 05:41:03 30 4
gpt4 key购买 nike

我想在 Chrome 扩展程序中提供一些高级功能。这个想法是,只要用户通过 PayPal 捐赠了一定金额,就可以使用后者的附加功能。

目前我的策略是这样的:

1/。用户填写 PayPal 表格。

2/。提交表单时,会生成一个返回 URL,其中包含一些关键参数,例如用户 ID、请求时间、捐赠金额。一切都通过 base64 编码。例如:

var returnURL = 'https://subdomain.main.com/?params=';

// On Form Submission
function SubmitForm(type) {

var paramURL = '?user=' + userID + '&time=' + now + '&type=' + ptype;

// base64 encoding via btoa
$('#donate [name=return]').val( returnURL + btoa(paramURL) );
// Reday to submit form
$('#PayPalForm').submit();

}

3/。 Paypal 捐赠已完成,用户被重定向到启用了 https 的扩展网站的子域。

4/。进入我的网站后,一些 PHP 代码会检查引荐来源网址(即用户是否来自 PayPal?),如果引荐来源网址看起来不错,它就会解码 base64 字符串并获取参数(id、时间、类型...)。例如:

// Retrieve URL parameters
$paramURL = parse_url(base64_decode($_GET['a']));
parse_str($paramURL['query'], $query);

$id_user = $query['user']; // ID of the user
$time_req = $query['time']; // Time of request/donation
$type_req = $query['type']; // Type of Premium license w.r.t amount donated

5/。在这个阶段,我的想法是创建一个新的 URL,指向我的 Chrome 扩展的选项页面,其中包含一些现有的和新的参数,其中包括解密用户安装时默认加密的部分代码的 key 扩展名。我遇到的第一个问题是我希望找到一种方法在 PHP 中加密这些参数,并能够在我的扩展中用 Javascript 解密它们。

我应该使用哪种在 PHP 和 JS 中都可用的对称加密/加密方法? AES256?在 JS 方面,我查看了 Crypto-JS。和 SJCL图书馆。在PHP 端,AES 加密似乎有点tricky ...

6/。一旦用户返回到扩展的选项页面并且 URL 参数被解码+解密,您的策略是什么来解锁 Javascript 编写的扩展中的特定功能以限制来自用户的作弊和搭便车,知道混淆是一个非常糟糕的选择。

最佳答案

您正在寻找的关键是您的 paypal 按钮表单中的“自定义”属性。像这样:

<input id="customField" type="hidden" name="custom" value="SENT_FROM_addon_form">

如果您在 paypal developer 中创建了一个开发者按钮,并设置了一个验证 URL,该自定义变量将显示在 PHP 的 $_POST 中。

您在此步骤中不需要加密,因为 Paypal 要求您使用自动加密的 https。但是,如果您确实想在服务器端使用纯加密,您应该查看 crytpo.js

关于javascript - 解锁 Chrome 扩展中的高级功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20793243/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com