2016-07-23 29 views
0

私の角型アプリケーションからHTML WebタグをASP.NET Webサービスに転記する際に問題があります。私はおそらくそれをエンコードしなければならないと考えました。しかし、エンコーディングしても内部サーバーエラー500が発生します。 postcontent = "test"のようなpostcontent変数に値を代入すれば、Webサービスに完全に投稿されます。ASP.NET WebサービスへのパラメータとしてのHTML文字の投稿

postcontent変数が記録され、コード化されているかどうかを確認するために警告しました。

明らかにwebserviceは自分のhtml文字列を受け取っていないので、なぜ私は不思議に思っています。以下は $ scope.CreatePost =関数(){私のコード

 var graveId = $location.search()['gravid']; 

     // get CKEDITOR value is structured like <p>placeholder</p> 
     var getcontent = CKEDITOR.instances['postEditor'].getData(); 
     var postcontent = escape(getcontent); 

     $http({ 
      method: 'POST', 
      url: 'http://localhost:51113/WebService.asmx/OpretPost', 
      data: "username=" + userName + "&password=" + passWord + "&graveId=" + graveId + "&content=" + postcontent, 
      headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8' } 
     }).then(function (response) { 
      console.log(response.data); 

     }); 
    } 

[WebMethod属性]

public void OpretPost(string username, string password, string graveId, string content) 
{ 
    /*Context.Response.Write(content); 
    var Customer = (from x in db._Users where x.UserPassword == password && x.UserName == username select x); 
    if (Customer.Count() > 0) 
    { 
     _Post nypost = new _Post 
     { 
      FK_GraveId = int.Parse(graveId), 
      FK_UserId = Customer.Single().UserId, 
      PostContent = content, 
      PostDate = DateTime.Now 


     }; 
     db._Posts.InsertOnSubmit(nypost); 
     db.SubmitChanges(); 

    }*/ 


} 

答えて

0

WebMethod属性を使用すると、POST要求に.thenしたい場合は、値を返すことがあります。 voidを文字列に変更してから有効な文字列(例: "OK")を返してください。

+0

この問題は解決されませんでした。この関数は、postcontent変数にhtmlが含まれていないのに、うまくいっていても、うまくいきませんでした。しかし、チップのおかげで –

関連する問題