在Ajax中上传文件:我最好的选择是什么?

时间:2011-04-27 17:14:04

标签: javascript html ajax http

我有一个网页表单,其中包含文件输入(用于照片)和文本字段(用于描述)。

当用户提交表单时,我想将文件POST到另一个域上的API。 API调用接受二进制文件信息。我希望通过Ajax发送POST请求,但似乎无法通过Ajax发送文件。

那么,我可以直接在API URL指向表单吗?这个问题是如何处理响应:如何在没有Ajax的情况下处理200响应并将用户转发到我的应用程序的“成功”页面?

或者我是否需要在服务器端脚本中执行POST?

2 个答案:

答案 0 :(得分:0)

  

我希望通过Ajax发送POST请求,但似乎无法通过Ajax发送文件。

您不仅无法使用AJAX上传文件,而且无法向不同的域发送AJAX请求。

所以这就是你能做的:

将表单POST发送到服务器上的服务器端脚本。此脚本将获取上载的文件和描述,并将它们作为新的POST请求发送到远程域。根据响应,您的服务器端脚本将重定向到您想要的任何位置。

答案 1 :(得分:0)

如何使用JavaScript库来提供帮助?你可以使用jQuery:How can I upload files asynchronously?