【发布时间】:2021-04-20 18:28:39
【问题描述】:
我正在开发一个 Wordpress 插件,它通过 Google 服务帐户与 Google Calendar API 对话。
这样的服务帐户附带一个 JSON 文件,其中包含其 OAuth2 凭据(例如client_id、public key 和 private key)。
为了使插件为其他人工作,我需要他们在插件中上传自己的 JSON 凭据文件。这样,插件将能够与 Google API 对话并访问/修改他们的个人日历。
事情是这样的:
Wordpress 插件文件没有保护,它们是公开的。如何在插件中存储 JSON 文件而不暴露其中包含的凭据?
“嘿伙计,你可以将 JSON 保存在数据库中……”
我知道,但 Google 的 API 客户端需要证书文件的字符串,而不是直接的 JSON:
$client = new Google\Client();
$client->setAuthConfig('./credentials.json');
【问题讨论】:
-
另外,它是否需要是 JSON 文件?您是否可以将这些参数存储在数据库中,作为单个字段或 JSON blob,并将其提供给您的代码?
-
@disinfor 并非所有插件用户都会在 Apache 上托管他们的 Wordpress 站点,因此修改 .htaccess 不是这里的解决方案,但我感谢您的帮助!
标签: php wordpress google-calendar-api wordpress-rest-api