W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Webhook 允許您使用您希望使用的任何工具在自己的環(huán)境中編寫服務(wù)器端邏輯。 如果您想使用 JavaScript 以外的語(yǔ)言、自行托管以提高測(cè)試能力,或者如果您需要 Moralis Cloud Functions 中不可用的專用庫(kù)或技術(shù),這可能會(huì)很有用。
Webhook 目前可用于 beforeSave、afterSave、beforeDelete、afterDelete 和 cloud functions。
注意:目前無(wú)法為特殊類 ?
_User
? 和 ?_Installation
? 設(shè)置自定義 webhook。
一個(gè) cloud function 的 webhook 請(qǐng)求將包含以下參數(shù):
master
?:如果使用主密鑰則為真,否則為假。
user
?:如果設(shè)置,這將包含發(fā)出請(qǐng)求的 Moralis 用戶,采用我們的 REST API 格式。 如果使用主密鑰,則不設(shè)置此項(xiàng)。
installationId
?:如果可用,則為發(fā)出請(qǐng)求的installationId。
params
?:一個(gè) JSON 對(duì)象,包含傳遞給函數(shù)的參數(shù)。 例如:{“foo”:“bar”}。
functionName
?:云函數(shù)的名稱。要響應(yīng)此請(qǐng)求,請(qǐng)發(fā)送一個(gè)帶有error或success key集合的 JSON 對(duì)象。
success
?:發(fā)回您的客戶期望的任何數(shù)據(jù); 或者如果您的客戶不需要任何數(shù)據(jù),則只是 ?true
?。
error
?:提供的值應(yīng)該是你想要返回的錯(cuò)誤信息。要為cloud function創(chuàng)建 webhook,首先在您自己的服務(wù)器上編寫函數(shù)代碼。
您可以從儀表板激活 webhook,如下所示:
設(shè)置 webhook 后,您可以從 Moralis SDK 調(diào)用它,就像使用普通cloud function一樣。
當(dāng)您想要使用 Moralis Cloud Functions 無(wú)法使用的專業(yè)技術(shù)時(shí),Webhook 非常有用。
對(duì)于觸發(fā)器,以下參數(shù)將發(fā)送到您的 webhook。
master
?:如果使用主密鑰則為真,否則為假。
user
?:如果設(shè)置,這將包含發(fā)出請(qǐng)求的 Moralis 用戶,采用我們的 REST API 格式。
installationId
?:如果可用,則為發(fā)出請(qǐng)求的installationId。
object
?:對(duì)于觸發(fā)器,這將包含 Moralis 對(duì)象,采用我們的 REST API 格式。 例如:{“className”:“TestObject”,“foo”:“bar”}。
triggerName
?:“beforeSave”。要響應(yīng) ?beforeSave
?請(qǐng)求,請(qǐng)發(fā)送一個(gè)帶有?error
?或?success
?key 的 JSON 對(duì)象。
這與cloud function相同,但 ?beforeSave
? 觸發(fā)器有一個(gè)額外的功能。 通過(guò)返回錯(cuò)誤,您將取消保存請(qǐng)求,并且該對(duì)象將不會(huì)存儲(chǔ)在 Moralis 中。 您還可以返回以下格式的 JSON 對(duì)象,以覆蓋將為對(duì)象保存的值:
{
"className": "AwesomeClass",
"existingColumn": "sneakyChange",
"newColumn": "sneakyAddition"
}
就像我們?cè)谄胀╟loud function中看到的那樣,也可以在使用 webhook 保存對(duì)象后運(yùn)行一些代碼。 發(fā)送到您的 webhook 的參數(shù)與 ?beforeSave
? 觸發(fā)器的參數(shù)相同,但為了清楚起見,我們將在此處重復(fù)它們。
master
?:如果使用主密鑰則為真,否則為假。
user
?:如果設(shè)置,這將包含發(fā)出請(qǐng)求的 Moralis 用戶,采用我們的 REST API 格式。
installationId
?:如果可用,則為發(fā)出請(qǐng)求的installationId。
object
?:對(duì)于觸發(fā)器,這將包含 Moralis 對(duì)象,采用我們的 REST API 格式。 例如:{“className”:“TestObject”,“foo”:“bar”}。
triggerName
?:“afterSave”。?
afterSave
?觸發(fā)器不需要響應(yīng)。
您還可以將 webhook 用于 ?beforeDelete
?觸發(fā)器。 發(fā)送到 webhook 的參數(shù)與 ?beforeSave
?和 ?afterSave
?觸發(fā)器的參數(shù)相同,但為了清楚起見,我們將在此處重復(fù)它們。
master
?:如果使用主密鑰則為真,否則為假。
user
?:如果設(shè)置,這將包含發(fā)出請(qǐng)求的 Moralis 用戶,采用我們的 REST API 格式。
installationId
?:如果可用,則為發(fā)出請(qǐng)求的installationId。
object
?:對(duì)于觸發(fā)器,這將包含 Moralis 對(duì)象,采用我們的 REST API 格式。 例如:{“className”:“TestObject”,“foo”:“bar”}。
triggerName
?:“beforeDelete”。就像cloud function一樣,要響應(yīng) ?beforeDelete
? 請(qǐng)求,發(fā)送一個(gè)帶有?error
?或?success
?集合的 JSON 對(duì)象。 返回錯(cuò)誤將取消刪除,并且該對(duì)象將保留在您的數(shù)據(jù)庫(kù)中。
?afterDelete
?觸發(fā)器也可以通過(guò) webhook 訪問(wèn)。 發(fā)送到您的 webhook 的參數(shù)與其他觸發(fā)器的參數(shù)相同,但為了清楚起見,我們將在此處重復(fù)它們。
master
?:如果使用主密鑰則為真,否則為假。
user
?:如果設(shè)置,這將包含發(fā)出請(qǐng)求的 Moralis 用戶,采用我們的 REST API 格式。
installationId
?:如果可用,則為發(fā)出請(qǐng)求的installationId。
object
?:對(duì)于觸發(fā)器,這將包含 Moralis 對(duì)象,采用我們的 REST API 格式。 例如:{“className”:“TestObject”,“foo”:“bar”}。
triggerName
?:“afterDelete”。?
afterDelete
?觸發(fā)器不需要響應(yīng)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: