我正在使用React编写我的应用,该应用将通过应用代理显示在我的shopify商店中。我有一个显示客户数据的链接/ customer-id。该链接由shopify主题创建,我的应用程序能够访问客户ID并显示客户数据。问题在于,具有此链接的任何人都可以查看数据。我知道在液体中我可以通过其他方式检查已登录的客户。但是我如何使用反应而不是液体来实现相同的行为?
将{{customer.id}}作为另一个变量使用AppProxy发送到您的服务器。如果客户未登录,则此变量将提供空值。
但是此变量将仅在液体文件中呈现。因此使用脚本标签发出应用代理请求在此行不通。
您需要在主题文件(如theme.liquid)或page.liquid(如果使用自定义页面)之类的液态文件中编写此js(以常规脚本标记)。
为此,您可以简单地使用API创建代码段并附加包含代码。 (或手动输入以下内容)
{%包括'app-proxy-initiator'%}
现在,在后端逻辑中,如果您的自定义变量不为null,并且与进行调用的URL中的ID相匹配,则仅发送响应。
希望这会有所帮助。