如何将字符串保存在Angular应用中的云存储中的文本文件中



这是我的问题:

我正在编写一个Angular应用程序,我将应用引擎和Google Cloud Storage用作后端(Java 8(。现在我有文本,我想将其保存到我的数据库中。使用云存储,我需要将此文本保存为文件。这样做的一种方式是将我的字符串转换为文件对象,并通过Multipart请求将其发送到服务器。

我该怎么做?

这是我到目前为止的代码(该代码的目的是发送照片加上文本描述(:

  uploadAlbum(index:number){
    const formData = new FormData();
    //`myPhoto` is a file created with the <input type="file"> tag
    formData.append('file', myPhoto, '/gcs/my-bucket/' + index +'/cover/cover.jpg');
    //here is my problem here `description` is not a file
    formData.append('description', description, '/gcs/my-bucket/' + index +'/cover/cover.txt');
    this.http.post('/api/photos',formData).subscribe(
      (data: any) => {
        response = data;
      },
       err => {
         console.log(err)
        }
      );
  }

由于description变量是字符串,我在控制台上会出现以下错误:

错误类型:" formdata.append的参数2不是对象。"

注意:即使这似乎是从主题出发的,我也在帖子上为后端服务器添加了标签,因为我愿意解决此问题,也可以在后端创建一个文件。

description不是文件,因为它可能不存在于客户端。

formData.append()用于用formData附加文件,以将其上传使用表单数据。

好吧,您无法使用JavaScript将文件保存到服务器。

看到它已经在这里回答了(使用JavaScript在服务器上保存文本文件(

最新更新