我正在使用asp.net web服务.asmx来传输json数据。我有以下代码似乎没有工作。
$.ajax({
type: "POST",
url: "../../App_Code/jsonWebService/getValue",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (output) {
alert(output);
$(config.captchaQuestion).html(output[0] + " + " + output[1] + " =");
$(config.captchaHidden).val(output[2]);
}
});
我在asmx文件的jsonWebService.cs中的代码是:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Script.Services;
using System.Web.Script.Serialization;
/// <summary>
/// Summary description for jsonWebService
// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
[System.Web.Script.Services.ScriptService]
public class jsonWebService : System.Web.Services.WebService {
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public Array getValue()
{
Random getRandom = new Random();
int rand1 = getRandom.Next(0, 9);
int rand2 = getRandom.Next(0, 9);
int sum = rand1 + rand2;
int[] jsonObject = new int[3] { rand1, rand2, sum };
return jsonObject;
}
}
我正在收到Forbidden错误403.提前致谢。
答案 0 :(得分:0)
您不能直接浏览app_code文件夹中的文件。您必须提供asmx文件的路径并使用Web服务名称。
更改
url: "../../App_Code/jsonWebService/getValue",
到的
url: "../../jsonWebService.asmx/getValue",
答案 1 :(得分:0)
网址不能是:
"../../App_Code/jsonWebService/getValue",
因为App_Code是一个存储类/模型/任何其他代码文件的特殊文件夹,我们可以直接访问该文件夹中的文件而无需指定文件夹路径(App_Code)..;)