我正在尝试使用对IPstack的API调用,以便隐藏来自日本(JP)的客户的快速支付选项。当通过浏览器堆栈测试时,它工作了几次,但现在我的应用程序接口调用收到以下控制台日志错误,因为它违反了以下内容安全策略指令:"script-src 'self‘'unsafe-inline’'unsafe-eval‘blob: cdn.shopify.com cdn.shopifycdn.net cdn.shopifycloud.com app.shopify.com“。有谁知道通过购物checkout.liquid页面上的地理位置隐藏元素的其他方法吗?
<div class ="alt-payments">{{ alternative_payment_methods }}</div>
<script>
jQuery.ajax({
url: 'https://api.ipstack.com/check?access_key=API_ACCESS_KEY&fields=country_code',
dataType: 'jsonp',
success: function(location) {
// If the visitor is browsing from JP.
if (location.country_code === 'JP') {
// display none express payments.
jQuery('.alt-payments').css('display','none');
}
}
} );
</script>
发布于 2020-12-21 21:23:41
我会使用Shopify Scripts,因为你用的是Plus。无论如何,付款是在发货之后进行的。所以你在付款前就知道地址了。除非你真的在做一些奇怪的事情。普通的Plus结账只需检查地址,然后使用脚本隐藏您不喜欢的支付方式。这就是Plus的全部意义。
https://stackoverflow.com/questions/65396751
复制