gpt4 book ai didi

javascript - Shopify:元字段 API — 是否可以允许用户从帐户页面编辑元字段?

转载 作者:行者123 更新时间:2023-12-01 02:07:21 31 4
gpt4 key购买 nike

我已成功创建客户元字段:customer.metafields.c_f.proxy

目标是允许客户(在登录时)从 account.liquid 模板中使用表单编辑元字段的值。我正在尝试使用一些 jquery 和 Metafield API POST 用户的更改:

<form action="/admin/customers/{{ customer.id }}/metafields.json" method="POST" id="custmeta">
<input type="hidden" name="customer[id]" value="{{ customer.id }}" />
<input type="text" name="metafield[c_f.proxy]" value="{{ customer.metafields.c_f.proxy }}" placeholder="{{ customer.metafields.c_f.proxy }}" />
<input type="submit" value="Edit"/>
</form>

<script>
$('form#custmeta').submit(function(e) {
e.preventDefault();
$.ajax({
type: "POST",
dataType: "json",
data: $(this).serialize(),
url: $(this).attr('action'),
success: function (data) {
var formValid = (data.status === 'OK');
if (formValid) {
var msgs = '';
for (var i=0;i<data.messages.length;i++) {
msgs += '-- ' + data.messages[i] + '\n';
}
if (msgs > '') {
alert('SUCCESS WITH MESSAGES:\n\n' + msgs);
}
else {
alert('SUCCESS!');
}
}
else {
alert('Status: ' + data.status + '\nMessage: ' + data.message);
}
},
error: function (jqXHR, textStatus, errorThrown) {
alert('AJAX or Server 500 error occurred');
}
});
return false;
});
</script>

当前抛出发生 AJAX 或服务器 500 错误。

编辑以包含来自另一个论坛的答案:

what you're doing won't work. You're sending data from a page to the API via JS in a browser. You'll be sending cookies in that request. Any request that updates/adds data will be blocked if it contains cookies.

最佳答案

标签解决方法可能很有用,但也很棘手。正确的方法是使用允许用户从店面更新元字段的应用程序,例如 MetaFields2 或自定义字段。

这些应用程序是付费的,因此您也可以轻松地自己实现。

关于javascript - Shopify:元字段 API — 是否可以允许用户从帐户页面编辑元字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50006870/

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