2016-05-17 8 views
1

ドキュメントをアップロードするためのUIがあればどこでもFormData APIを使用してWeb APIに非同期にアップロードできます。今は、UIやユーザー入力を使わずにファイルパスに基づいてドキュメントをアップロードする必要があるシナリオがありますが、どうすればいいのですか?html User ControlまたはFormを使用せずに、Ajaxを使用してWeb APIにドキュメントをアップロードするにはどうすればよいですか?

以下は、ユーザーがファイルをフォームにアップロードする際に使用するコードです。

var formData = new FormData(); 
    var myFile = $('#myFile')[0]; 
    formData.append("myFile", myFile.files[0]); 
    $.ajax({ 
     url: url, 
     type: 'POST', 
     data: formData, 
     contentType: false, 
     processData: false, 
     success: function (data, textStatus, xhr) { 
      console.log(data); 
     }, 
     error: function (xhr, ajaxOptions, rtnError) { 
      alert(xhr.responseText + rtnError); 
     } 
    }); 
+1

私はあなたが彼らの許可O/Wユーザーのマシンへのアクセスを得ることができるとは思いません。彼らはある種のユーザインタラクションでなければなりません。 – colecmc

答えて

0

一般では、直接(これは仕様です)ブラウザ内でJavaScriptを使用して、クライアントのファイルシステムにアクセスすることはできませんので、あなたはそれをアップロードできるようにするには、手動でファイルを選択するために、ユーザが必要になります。

この質問は、さらにJavaScriptでファイルを操作する上で制約が何であるかを明確にする:Local file access with javascript

+0

ありがとう!私は、それを操作する方法があると思っていただけです。今のところ、私はサーバー側からWeb APIを呼び出し終わった! – seUser

関連する問題