2017-07-31 12 views
1

ajax経由でファイルをアップロードしようとしましたが、このメッセージがスローされます: "サーバーは405 "ルートがこのように定義されていますRoute::post('/file/upload', '[email protected]');そして、私が使用しているAjaxのコードはこれです:Laravel 5:サーバーが405(Method Not Allowed)の状態で応答しました

var upload_file=function(input_file,format){ 
      var formData = new FormData(); 
      formData.append("upload_file",input_file); 
      // formData.append("format",format); 
      return $.ajax({ 
       type: 'POST', 
       dataType: 'json', 
       processData: false, 
       contentType: false, 
       data: formData, 
       cache:false, 
       url: '/file/upload/' 
      }); 
     } 

どういうわけか、それはローカルに動作しますが、私は、サーバー上でそれをしようとすると、それは、このエラーがスローされます、しかし、私はしました以前はこの同じコードを使用していましたが、うまくいきました。

答えて

1

urlの最後の「/」を削除しようとします。url: '/ file/upload'

var upload_file=function(input_file,format){ 
     var formData = new FormData(); 
     formData.append("upload_file",input_file); 
     // formData.append("format",format); 
     return $.ajax({ 
      type: 'POST', 
      dataType: 'json', 
      processData: false, 
      contentType: false, 
      data: formData, 
      cache:false, 
      url: '/file/upload' 
     }); 
    } 
+0

恥ずかしながら、ありがとう、どうして、それは最後のスラッシュでローカルに動作するのですか? –

+0

おそらくあなたはApacheやそれに類するものをローカルに持っていますが、サーバーにはnginxがありますので、いくつかの違いがあります。 – eray

関連する問題