首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Ember中发送文件是POST请求?现在只发送文件名

在Ember中发送文件作为POST请求,需要使用FormData对象来构建请求体,并使用fetch或ajax方法发送请求。

以下是一个示例代码,演示如何在Ember中发送文件作为POST请求:

代码语言:txt
复制
import { inject as service } from '@ember/service';
import Controller from '@ember/controller';

export default Controller.extend({
  ajax: service(),

  actions: {
    async uploadFile(file) {
      let formData = new FormData();
      formData.append('file', file);

      try {
        await this.ajax.request('/upload', {
          method: 'POST',
          data: formData,
          processData: false,
          contentType: false
        });

        console.log('File uploaded successfully!');
      } catch (error) {
        console.error('Error uploading file:', error);
      }
    }
  }
});

在上述代码中,我们首先创建了一个FormData对象,并将文件添加到formData中。然后,使用ajax服务的request方法发送POST请求到指定的上传接口(这里假设接口为/upload)。在请求配置中,我们将processDatacontentType设置为false,以确保不对formData进行额外处理。

请注意,上述代码中使用了Ember的ajax服务来发送请求。如果你更喜欢使用fetch API,可以将this.ajax.request替换为fetch方法。

这是一个简单的示例,你可以根据实际需求进行修改和扩展。希望对你有帮助!

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 领券