公開されたサーバーで正常にpingを実行して、テストをデモとして返すことができるRESTful Webサービスがあります。次に、呼び出すメソッドにコードを入れようとしましたが、AJAX 呼び出しで失敗したようです。localhostで実行されているサーバーがないため、エラーがどこにあるのかわかりません。構文はデザインのテストと同じであるため、Webサービスが正しく呼び出されていることはわかっています
私はそれを行っていた同様の方法を持っていましたが、RESTful ではなかったので、それに応じてすべてのデータを移行したので、メソッド内のコードが正しく機能することがわかりました。
以下に AJAX 呼び出しを掲載します。
$.ajax({
type: 'GET',
url: WEBSERVICE_URL + 'getWebFormDesignFieldContents',
data: JSON.stringify({
'pr_id': LOGGED_IN_PR_ID,
'fe_name': opts,
'_count': 200, //this might need to be adjusted slightly. I may want to make it more OR less.
'_also_search_fe_desc': true,
'opts': opts
}),
contentType: 'application/json; charset=utf-8',
dataType: 'jsonp',
success: function (result) {
//success
var r = $(result.getWebFormDesignFieldContentsResult)[0];
var div = $("<div class='modal'>").html(r.d);
/*
var d = document.createElement("div");
d.className = "modal";
d.appendChild(r[0]);
*/
$("div.modal").replaceWith(div);
$("div.modal #queryInput").val(opts);
$("div.modal").css({
top: $(window).height() / 2 - $("div.modal").height() / 2,
left: $(window).width() / 2 - $("div.modal").width() / 2
});
$("div.modal").fadeIn();
},
error: function (result) {
//error
//alert("Error: "+result.statusText);
alert(result.statusText);
//$("div.modal").replaceWith($("<div class = 'modal'>").html(result.responseText));
//$("div.modal").fadeIn();
$("div.overlay").fadeOut();
}
});
Web サービス インターフェイス:
[OperationContract]
[WebInvoke(Method = "POST",
ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped,
UriTemplate = "getWebFormDesignFieldContents")]
string getWebFormDesignFieldContents(WebFormFieldClass inputData);
Webサービス機能
public string getWebFormDesignFieldContents(string pr_id, string fe_name, string _count, string _also_search_fe_desc, string opts)
{
int count = Convert.ToInt32(_count);
bool also_search_fe_desc = Convert.ToBoolean(_also_search_fe_desc);
...
}
[DataContract]
public class WebFormFieldClass
{
[DataMember]
public string pr_id { get; set; }
[DataMember]
public string fe_name { get; set; }
[DataMember]
public int count { get; set; }
[DataMember]
public string also_search_fe_desc { get; set; }
[DataMember]
public string opts { get; set; }
}