WordPress 在内存中存储身份验证令牌
WordPress Store Authentication token in memory
我正在寻找有关 WordPress 插件开发的帮助。我的插件查询需要身份验证令牌的 API,该令牌是通过令牌交付 APi 获取的。令牌每 3600 秒过期一次。
我想以持久的方式存储令牌(对于所有会话,如服务器端缓存)并仅在需要时更新它。多个 Api 调用可以使用相同的令牌完成。问题是,如果我将令牌存储在全局变量中,每次用户重新加载使用我的插件的页面时,它都会被重置。
https://wordpress.stackexchange.com/questions/89263/how-to-set-and-use-global-variables-or-why-not-to-use-them-at-all
寻找答案后我发现:
-WP_CACHE ,但不是持久的。
-我知道我可以将令牌存储在数据库中,但是数据库中的令牌不是我发现优雅的用例
-PHP 的 Redis 对象缓存等工具,但我发现它真的很复杂,安装等...
有什么好的做法或简单的方法吗?我只需要保留一个字符串一个小时并在 PHP.
中的插件中访问它
谢谢。
在这种情况下,我会使用 WordPress 瞬变:
https://developer.wordpress.org/reference/functions/set_transient/
https://developer.wordpress.org/reference/functions/get_transient/
要设置瞬态,您可以使用此代码:
$transient = 'your_token_name';
$value = 'your_token'
$expiration = 3600
set_transient( $transient, $value, $expiration );
要再次接收瞬态值,您可以使用:
$token = get_transient( $transient );
使用这些方法比 update_option
或 get_option
更好,因为 WordPress 完全管理瞬变的过期(删除),因此您不必为此实现自己的逻辑。
在将值传递给瞬态方法之前,您可以通过在 wp-config.php
中存储一个 salt/key 来对其进行加密和解密。您可以在此处找到有关此主题的更多信息:
http://php.net/manual/es/function.openssl-encrypt.php
http://php.net/manual/es/function.openssl-decrypt.php
要在 WordPress 中定义常量,您需要转到 wp-config.php
文件并将其添加到“您可以编辑”字样之间:
define( 'YOUR_SALT', '12345678' );
您可以在 WordPress 中将其作为普通常量再次阅读:
$salt = YOUR_SALT;
我正在寻找有关 WordPress 插件开发的帮助。我的插件查询需要身份验证令牌的 API,该令牌是通过令牌交付 APi 获取的。令牌每 3600 秒过期一次。
我想以持久的方式存储令牌(对于所有会话,如服务器端缓存)并仅在需要时更新它。多个 Api 调用可以使用相同的令牌完成。问题是,如果我将令牌存储在全局变量中,每次用户重新加载使用我的插件的页面时,它都会被重置。 https://wordpress.stackexchange.com/questions/89263/how-to-set-and-use-global-variables-or-why-not-to-use-them-at-all
寻找答案后我发现:
-WP_CACHE ,但不是持久的。
-我知道我可以将令牌存储在数据库中,但是数据库中的令牌不是我发现优雅的用例
-PHP 的 Redis 对象缓存等工具,但我发现它真的很复杂,安装等...
有什么好的做法或简单的方法吗?我只需要保留一个字符串一个小时并在 PHP.
中的插件中访问它谢谢。
在这种情况下,我会使用 WordPress 瞬变:
https://developer.wordpress.org/reference/functions/set_transient/ https://developer.wordpress.org/reference/functions/get_transient/
要设置瞬态,您可以使用此代码:
$transient = 'your_token_name';
$value = 'your_token'
$expiration = 3600
set_transient( $transient, $value, $expiration );
要再次接收瞬态值,您可以使用:
$token = get_transient( $transient );
使用这些方法比 update_option
或 get_option
更好,因为 WordPress 完全管理瞬变的过期(删除),因此您不必为此实现自己的逻辑。
在将值传递给瞬态方法之前,您可以通过在 wp-config.php
中存储一个 salt/key 来对其进行加密和解密。您可以在此处找到有关此主题的更多信息:
http://php.net/manual/es/function.openssl-encrypt.php http://php.net/manual/es/function.openssl-decrypt.php
要在 WordPress 中定义常量,您需要转到 wp-config.php
文件并将其添加到“您可以编辑”字样之间:
define( 'YOUR_SALT', '12345678' );
您可以在 WordPress 中将其作为普通常量再次阅读:
$salt = YOUR_SALT;