2011-12-19 13 views
0

私はASPXページでファイルをアップロードするコントロールがあり、これはExcelファイルのみを受け付けます。正しいファイルがコントロールに投稿されている場合、そのファイルパスはjQuery Ajax呼び出しを介してWebサービスに送信されます。私のWebサービスは、Excelファイルで計算を実行し、そのファイルをローカルに保存します。JSON経由でajax呼び出しを使用してファイルパスにアクセスする

私はVisual Studio Development Severでこのプロジェクトを正常に実行します。しかし、プロダクションサーバーに展開すると、プロダクションサーバーでそのファイルがローカルにチェックされるため、そのファイルパスでエラーが発生しています。どうすればこの問題を克服できますか?ここで

私のjQueryのAjaxの機能は:

$.ajax({ 
      type: "POST", 
      url: "ExcelUpload.asmx/FillObjets", 
      data: JSON.stringify({ fileName: filename }), 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      beforeSend: function() { 
       $("#Status").html("<br><center><img src=images/ajax-loader.gif/></center>"); 
      }, 
      success: function (msg) { 
      var output=""; 
      var re = eval('(' + msg.d + ')'); 
        if (re.length > 0) { 
         for (var i in re) { 
         var xl = re[i]; 
         switch(parseInt(xl.status)) 
         { 
          case 1: output=xl.message;break; 
          case 2: output=xl.message;break; 
         }       
         } 
        $("#Status").html(output); 
       } 


      }, 
      error: function (msg) { 
       alert(msg.d); 
      } 

     });   
+0

どのファイルパスにアクセスしようとしていますか?クライアントコンピュータのもの?クライアントコンピュータの –

+0

はい.thanks – Aroor

答えて

1

セキュリティ上の理由から、あなたは、クライアントブラウザ上のファイル入力で選択されたファイルへの完全なファイルパスにアクセスすることはできません。ファイル名のみにアクセスできますが、その場所はアクセスできません。

+0

okです。実行時にjQueryを使用してファイルにアクセスし、ルートディレクトリに保存できますか? – Aroor

+0

@ArooranS、このファイルにはどこにアクセスしますか?サーバー上で? AJAXを使用してファイルをアップロードすることはできないことに注意してください。 Uploadifyのようないくつかのファイルアップロードjavascriptコントロールを使用することができます。 –

+0

なぜこれが生産で失敗しますが、開発サーバーで失敗するのでしょうか?私はこれが問題だとは思わない。いずれにしても、ファイル名のみが送信され、フルパスは送信されません。 – Richard

関連する問題