Javascript 将表单数据发送到firebase函数

Javascript 将表单数据发送到firebase函数,javascript,firebase,google-cloud-functions,Javascript,Firebase,Google Cloud Functions,我想将数据从javascript网页发送到firebase云函数(HTTP请求) 我已经看过一些关于使用Busboy的教程,但那是在云函数方面。我想知道的是如何从客户端网页将其发送到函数 正如googlecloud函数中给出的,我在Firebase函数中使用了以下代码 ... busboy.on('field', (fieldname, val) => { // TODO(developer): Process submitted field values here con

我想将数据从javascript网页发送到firebase云函数(HTTP请求)

我已经看过一些关于使用Busboy的教程,但那是在云函数方面。我想知道的是如何从客户端网页将其发送到函数

正如googlecloud函数中给出的,我在Firebase函数中使用了以下代码

...
busboy.on('field', (fieldname, val) => {
    // TODO(developer): Process submitted field values here
    console.log(`Processed field ${fieldname}: ${val}.`);
    fields[fieldname] = val;
  });
...
提前感谢。

如果使用“标准”,则需要使用JavaScript从网页发出HTTP请求。一种方法是使用库

这很简单:

您可以在html页面的头部声明库

<head>
  ...
  <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
  ...
</head>
查看文档,其中详细解释了所有步骤(如何编写云函数以及如何调用它)。

如果使用“标准”,则需要使用JavaScript从网页发出HTTP请求。一种方法是使用库

这很简单:

您可以在html页面的头部声明库

<head>
  ...
  <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
  ...
</head>

看一看文档,它详细解释了所有步骤(如何编写云函数以及如何调用它)。

我知道,axios不是formData(PIC和其他)等对象的最佳解决方案,如果使用fetch,可能会更好

我知道,axios不是formData(PIC和其他)等对象的最佳解决方案,如果您使用fetch可能会更好

如果不使用axios这样的外部库,还有其他方法吗?是的,您可以在Ajax中进行HTTP调用或使用jQuery方法(请参阅本文档),但我建议使用axios,它对用户非常友好,并且还返回了承诺(这与Firebase Web/JavaScript SDK处理异步任务的方式一致)@BasilVictor查看我关于如何发送“多部分/表单数据”的更新。上传请求我已经实现了axios,但似乎出现了错误。CORS策略已阻止从源“”访问“”处的XMLHttpRequest:请求的资源上不存在“访问控制允许源”标头。你能告诉我一个快速修复方法吗?看看有没有其他方法不使用像axios这样的外部库?是的,你可以在Ajax中进行HTTP调用或使用jQuery方法(请参阅本文档),但我建议使用axios,它对用户非常友好,而且还返回了承诺(这与Firebase Web/JavaScript SDK处理异步任务的方式一致)@BasilVictor查看我关于如何发送
'multipart/form data'
上载请求的更新我已经实现了axios,但是出现了一个错误。从源“”访问位于“”的XMLHttpRequest已被CORS策略阻止:请求的资源上没有“Access Control Allow origin”头。您能告诉我一个快速修复方法吗。H看一看
var addMessage = firebase.functions().httpsCallable('addMessage');
addMessage({text: messageText}).then(function(result) {
  // Read result of the Cloud Function.
  var sanitizedMessage = result.data.text;
  // ...
});