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

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

axios post 帶有 firebase 云功能

axios post 帶有 firebase 云功能

楊魅力 2023-08-10 15:31:12
我有基本的 firebase 云功能。我想用 Axios 發布請求(發送 Slack 消息)。但服務器返回“錯誤:無法處理請求(500)”。哪里有問題?我用的是corsconst cors = require('cors') const functions = require('firebase-functions')const Axios = require('axios')exports.sendMessage = functions.https.onRequest((request, response) => {  return cors()(request, response, () => {    return Axios.post(      `https://hooks.slack.com/services/*XXXXXXXXXXXXX*`,      {        blocks: [          {            type: 'section',            text: {              type: 'mrkdwn',              text: 'hello',            },          },        ],      }    )  })})
查看完整描述

2 回答

?
子衿沉夜

TA貢獻1828條經驗 獲得超3個贊

看來你使用cors方法不對。您還應該使用提供的返回任何值response。詳細信息請查看下面。


const cors = require('cors')({origin: true});


exports.sendMessage = functions.https.onRequest((request, response) => {

  return cors(request, response, async () => {

    try {

      const res = await Axios.post(

        `https://hooks.slack.com/services/*XXXXXXXXXXXXX*`,

        {

          blocks: [

            {

              type: 'section',

              text: {

                type: 'mrkdwn',

                text: 'hello',

              },

            },

          ],

        },

      );

      response.status(res.status).json(res.data);

    } catch (error) {

      response.status(400).json(error);

    }

  });

});


查看完整回答
反對 回復 2023-08-10
?
四季花海

TA貢獻1811條經驗 獲得超5個贊

實現此目的的方法是將標題“Content-Type”:“application/x-www-form-urlencoded”添加到帖子中。您可以使用您提供的代碼來執行此操作:


const cors = require('cors') 

const functions = require('firebase-functions')

const Axios = require('axios')


exports.sendMessage = functions.https.onRequest((request, response) => {

  return cors()(request, response, () => {

    return Axios.post(

      `https://hooks.slack.com/services/*XXXXXXXXXXXXX*`,

      {

        blocks: [

          {

            type: 'section',

            text: {

              type: 'mrkdwn',

              text: 'hello',

            },

          },

        ],

      },

      {

        headers: {

          "Content-Type": "application/x-www-form-urlencoded",

        },

      }

    )

  })

})

Slack API 似乎不能很好地處理常規 JSON,這是 Axios 的默認設置,因此這就是需要更改的原因。


希望這能幫您解決這個問題!


查看完整回答
反對 回復 2023-08-10
  • 2 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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