Tag: web services

从Jquery ajax调用WCF服务时出现404 Not Found错误

我试图使用jquery ajax调用从html页面访问IIS上托管的wcf服务,我无法点击服务,它抛出404找不到错误,我可以知道我应该在jquery ajax调用或web配置中进行更改用于访问IIS或其他远程计算机中托管的服务的文件 HTML页面: var inputdata = { “userId”: “101”}; jQuery.support.cors = true; $.ajax({ url: ‘http:///WcfService1/Service1.svc/GetUserDetails’, data: JSON.stringify(inputdata), type: ‘POST’, dataType : “jsonp”, contentType: “application/json; charset=utf-8”, //jsonpCallback: “handleResponse”, success: function (result) { console.log(result.data); alert(“success”); }, error: function (request, error) { alert(‘Network error has occurred please try again.Please check your connection and try again.’); return;} }); […]

autosuggest,ws和json问题

$.ajax({ type: “POST”, url: “/webservices/AutoSuggestWebService.asmx/GetSuggestedRestaurants”, data: “{‘prefixText’: ‘” + $(‘#ctl00_ctl00_cplMPBody_txtSearch’).val() + “‘}”, contentType: “application/json; charset=utf-8”, dataType: “json”, success: function(msg) { data = msg.d; alert(msg.d) $(“#ctl00_ctl00_cplMPBody_txtSearch”).autocomplete(data); } }) 数据在哪里 [“some text”,”another some textz”,”huh just text”] WS: [WebMethod] public string GetSuggestedRestaurants(object prefixText) { JavaScriptSerializer js = new JavaScriptSerializer(); string json = js.Serialize(new RestaurantSearchHelper(DaoFactory).GetSearchSuggest(prefixText.ToString(), PageBase.CurrentCountry)); } 但如果我用“so”这个词搜索,我什么也得不到。 如果回归 […]

处理jQuery Ajax方法引发的错误

我有一个页面,我在其中使用jQuery ajax方法来调用一个简单的Web服务,它将从数据库中获取一些数据并将其绑定到页面中的某些控件。 在select的onchange事件上调用ajax方法(这里的HTTP请求是POST)。 以下是jQuery ajax方法 function CallAjax(url, jsonData, SucessFunction, FailurFunction) { $.ajax({ type: “POST”, url: url, data: jsonData, contentType: “application/json; charset=utf-8”, dataType: “json”, success: SucessFunction, error: function(){ alert(‘error occured’); } }); } 上述方法的URL是somepage.aspx / getDataFromDatabse,其中getDataFromDatabse是webservice方法。 我们的测试人员正在使用burp套件测试页面。 当他们直接在浏览器中访问URL(www.example.com/somepage.aspx/getDataFromDatabse)时,burp套件中显示的HTTP方法是GET,并且引发错误并且用户被重定向到相应的页面。 但是当他们直接访问上述URL并拦截burp suite中的请求并将GET请求更改为POST请求时,以下错误消息将直接显示在浏览器中: {“Message”:“处理请求时出错。”,“StackTrace”:“”,“ExceptionType”:“”} 上面的ajax函数中的“错误”没有被执行,并且没有显示警告框,我们能够处理错误。 如何处理此类错误并将用户重定向到自定义页面?

如何在jQuery.post中使用动态数据名?

我有2个基本forms用于转换数据(类型1 类型2)。 我想只用一张表格来做我的.post请求。 我遇到了jquery.post的[data]参数问题 这是我的代码: $(‘form’).submit(function(){ var a = $(this).parent().find(“input”).attr(‘name’); var b = $(this).parent().find(“input”).val(); var url = $(this).attr(‘action’) $.post(url, { a:b },function(data) { $(data).find(‘string’).each(function(){ $(‘.result’).html($(this).text()); }); }); return false; }); 问题出在{a:b} 。 b被解释为我的var b ,但a不是,使我的post参数类似于[a:1]而不是[param:1] 。 有没有办法让动态?

为什么OPTIONS请求被发送到服务器?

我使用一个简单的jQuery.ajax方法: $.ajax({ type: “GET”, url: serviceUrl + ‘/GetAgentsGroupNameById’, contentType: “application/json; charset=utf-8”, data: { id: agentsGroupId }, async: false, success: function (data) { agentsGroupName = data[“d”]; }, error: function (request, message) { agentsGroupName = ”; } }); 发送’Get’请求,我从服务器得到格式良好的json响应。 问题是我在开发人员工具中看到另一个请求生成到同一个URL,请求方法:OPTIONS,响应为空,我看到一个错误: OPTIONS http://localhost:1004/MobileService.asmx/GetSubscribedAgentsByUserId?userId=27 500 (Internal Server Error) 这个OPTIONS请求是什么? 为什么会这样? PS我提到如果我删除contentType:“application / json; charset = utf-8”(并添加dataType:json或jsonp),则不会生成OPTIONS请求,但我没有得到格式正确的json作为响应(我得到一个xml文档) BTW:该服务是asp.net c#: [WebMethod] […]

通过jquery跨域调用web服务

我是jquery的新手,所以请光临我, 我试图通过客户端脚本连接到.asmx webservice(跨域)现在实际上我有问题使用POST,因为它被阻止并且在firebug给我: 选项添加(方法名称)500内部服务器错误。 我通过使用GET来绕过这个问题,它在没有输入任何参数时工作正常但是给我带来参数问题。 请参阅下面的代码。 以下是一个简单的例子,我试图通过使用参数来解决问题。 带参数 function CallService() { $.ajax({ type: “GET”, url: “http://localhost:2968/MyService.asmx/Add”, data: “{‘num1’:'” + $(“#txtValue1”).val() + “‘,’num2’:'” + $(“#txtValue2”).val() + “‘}”, //contentType: “application/json; charset=utf-8”, dataType: “jsonp”, success: function(data) { alert(data.d); } }); 网络服务 [WebMethod, ScriptMethod(UseHttpGet = true, XmlSerializeString = false, ResponseFormat = ResponseFormat.Json)] public string Add(int num1, int num2) { […]

使用JQuery访问ASP.net webservice时出错 – JSONP

请查看下面的代码,并帮助我弄清楚我的Web服务代码中出了什么问题。 我想建立一个可以使用JSONP使用的asp.net Web服务。 我在客户端使用Jquery来访问该站点。 即使在设置了适当的属性后,我的Web服务仍然会发出xml,因为aynch调用失败了。 网络服务 [WebService(Namespace = “http://tempuri.org/”)] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.Web.Script.Services.ScriptService] public class WebService : System.Web.Services.WebService { public WebService () { //Uncomment the following line if using designed components //InitializeComponent(); } [WebMethod] [ScriptMethod(ResponseFormat= ResponseFormat.Json, XmlSerializeString=false, UseHttpGet=true)] public string HelloWorld(int id, string __callback) { return __callback + “({message: ‘Hello World’})”; } } Web服务响应: test({message: […]

如何使用原生Android 2.1浏览器中的javaScript检查与服务器的连接?

我正在构建一个需要在线或离线时无缝工作的Web应用程序。 为此,需要能够检查我与服务器的连接 。 支持的主要设备是iphone3 + 4,ipad,带Chrome的上网本和Android 2.1+。 navigator.onLine并不是我想要的。 这是不可靠的,只检查您是否有连接,而不是连接到特定服务器。 我尝试使用jQuery.getJSON连接到我的服务器上的ping web服务。 这在上网本的chrome中运行良好,但原生android浏览器返回null。 Ipod touch根本不做任何事情。 我可以用这个帮助..

如何设置.asmx webservice使用Asp.net启用跨域

我的网络服务代码是 [WebMethod] public List GetMachineData_List(string prefix, int person_id) { using (var db = new TestDB()) { List list = db.Fetch(“select id,name from machine_data_collection mc where mc.id=@0 and name like ‘%” + prefix + “%'”, person_id); return list.ToList(); } } 我的jquery Ajax调用是 $(“#textbx”).autocomplete( { source: function (request, response) { $.ajax({ url: ‘http://localhost:4787/ws/webservice.asmx/GetMachineData_List’, data: { prefix: request.term.toString() […]

$ .ajax并将数据传递给.asmx webservice

我很困惑为什么会这样。 我似乎无法通过$.ajax成功传递数据,URL全部被破坏而不是在查询字符串中传递的数据。 为简洁起见,我清理了代码,见下文。 Web服务(使用GET) [WebMethod] [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)] public string TestMethod(string country, string city) { return country + city; } jQuery的 $.ajax({ url: “Test.asmx/TestMethod”, type: “GET”, data: ‘{“country”:”‘ + country + ‘”,”city”:”‘ + city + ‘”}’, dataType: “json”, success: function(msg) { alert(msg.d); } }); 产生的URL和错误(在Firebug中) http://example.com/Test.asmx/TestMethod?{%22country%22:%22NZ%22,%22city%22:%22AK%22} System.InvalidOperationException: Missing parameter: country.