Javascript 如何将文件系统中的文件编码为多部分/表单数据?

Javascript 如何将文件系统中的文件编码为多部分/表单数据?,javascript,facebook-graph-api,winjs,multipartform-data,facebook-winjs-sdk,Javascript,Facebook Graph Api,Winjs,Multipartform Data,Facebook Winjs Sdk,我想让用户在我的图像查看器应用程序中将照片上传到Facebook。正如在这篇文章中所看到的,我必须将我的照片编码为多部分/表单数据才能上传它们。如何在Windows.Storage.StorageFile项目上存档此编码?您需要打开该照片(类型为Windows.Storage.StorageFile)进行读取,将其流转换为blob,将其附加到FormData对象,然后使用所需的Ajax库进行上传(WinJS.xhr,jQuery.ajax等) 下面的代码比文字更能说明这一点: file.open

我想让用户在我的图像查看器应用程序中将照片上传到Facebook。正如在这篇文章中所看到的,我必须将我的照片编码为多部分/表单数据才能上传它们。如何在
Windows.Storage.StorageFile
项目上存档此编码?

您需要打开该照片(类型为
Windows.Storage.StorageFile
)进行读取,将其流转换为blob,将其附加到
FormData
对象,然后使用所需的Ajax库进行上传(
WinJS.xhr
jQuery.ajax
等)

下面的代码比文字更能说明这一点:

file.openReadAsync().done(function(fileStream) {                
   var fileData = MSApp.createBlobFromRandomAccessStream(file.contentType, fileStream);
   var formData = new FormData();
   formData.append('upload', fileData, file.name);

   ... // send formData as xhr request body
});