私は私のフォームを持っています:
<form id="upload" method="POST" enctype="multipart/form-data" action="#">
<input id="file" name="file" type="file"/>
<button type="submit" id="btn">Upload</button>
</form>
フォームを処理して送信するための私のjquery。
$('form#upload').live('submit', function(e) {
e.preventDefault();
var filename = $("#file").val();
$.ajax({
type: "POST", url: "http://www.domain.com/upload/",
dataType: "html",
enctype: 'multipart/form-data',
data: {file: filename},
success: function(responseData, textStatus, jqXHR) {
var value = responseData;
alert(value);
},
error: function (responseData, textStatus, errorThrown) {
alert('POST failed.');
}
});
return false;
});
現在、www.domain.com/upload/ は nginx でセットアップされているため、アップロードの試行をインターセプトして処理します。たとえば、php で処理するのではありません。
詳細については、http: //blog.martinfjordvald.com/2010/08/file-uploading-with-php-and-nginx/をご覧ください。
POST failed を返し続けます。具体的には、コンソールに 400 BAD REQUEST または 405 が表示されます。
これに関するアイデアはありますか?