亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

以編程方式更新 Zapier 存儲

以編程方式更新 Zapier 存儲

肥皂起泡泡 2021-07-22 08:13:27
我一直在通過 store.zapier.com 端點使用 Zapier 存儲 api,并且在設置和檢索值方面取得了成功。然而,我最近發現需要存儲更復雜的信息,我想隨著時間的推移更新這些信息。我目前存儲的數據如下所示:{"task_id_1": {"google_id": "google_id_1", "due_on": "2018-10-24T17:00:00.000Z"},"task_id_2": {"google_id": "google_id_2", "due_on": "2018-10-23T20:00:00.000Z"}, "task_id_3": {"google_id": "google_id_3", "due_on": "2018-10-25T21:00:00.000Z"},}我想要做的是更新任何任意 task_id_n 的“due_on”子值,而不必再次刪除和添加它。閱讀 store.zapier.com 上的 API 信息,我發現您可以發送補丁請求并結合特定操作來更好地控制存儲的數據。我嘗試使用補丁請求和“set_child_value”操作如下:def update_child(self, parent_key, child_key, child_value):        header = self.generate_header()        data = {            "action" : "set_child_value",            "data" : {                "key" :  parent_key,                "value" : {child_key : child_value}            }        }        result = requests.patch(self.URL, headers=header, json=data)        return result當我發送此請求時,Zapier 以 200 狀態代碼響應,但存儲未更新。任何想法我可能會錯過什么?
查看完整描述

2 回答

?
慕虎7371278

TA貢獻1802條經驗 獲得超4個贊

我能夠通過將我的請求從 PATCH 修改為 PUT 來更新特定的子值。我不得不取消以下數據結構:


data = {

            "action" : "set_child_value",

            "data" : {

                "key" :  parent_key,

                "value" : {child_key : child_value}

            }

而是將其發送為:


data = {

            parent_key : {child_key : child_value}

           }

我更新的請求看起來像:


def update_child(self, parent_key, child_key, child_value):


        header = self.generate_header()


        data = {

            parent_key : {child_key : child_value}

            }



        result = requests.put(self.URL, headers=header, json=data)

        return result

我之前嘗試的補丁方法從未真正解決過這個問題,它確實適用于其他 Zapier 存儲方法,例如“pop_from_list”和“push_to_list”。無論如何,對于遇到相同問題的任何人來說,這都是一個合適的解決方案。


查看完整回答
反對 回復 2021-07-28
  • 2 回答
  • 0 關注
  • 168 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號