Tag: web services

从ASMX webservice读取XML数据以进行Jquery自动完成

我和ASMX Web服务无法使用。 我们争吵。 她提出了我们过去的论点。 这是一种痛苦。 我们的关系在岩石上! 我有一个ASMX Web服务,我没有使用Newtonsoft库进行序列化(解释原因在这里: http : //encosia.com/2011/04/13/asp-net-web-services-mistake-manual-json – 序列化/ )。 它看起来像这样: [WebMethod] [ScriptMethod(ResponseFormat = ResponseFormat.Json)] public string[] GetCitiesWithState(string isoalpha2, string prefixText) { var dict = AtomicCore.CityObject.GetCitiesInCountryWithStateAutocomplete(isoalpha2, prefixText); string[] cities = dict.Values.ToArray(); return cities; } 够简单吧? 它在搜索new时返回: New Orleans, Louisiana New York, New York 我期待JSON,但经过一些阅读后,似乎我不应该尝试序列化输出 – 它应该恰好发生吗? 无论如何,所以我在前端有以下JQuery: $(‘#’).autocomplete(”, { dataType: ‘json’, […]

如何添加Access-Control-Allow-Origin?

当我调用我的webservice方法时,我收到以下错误。 Origin http://localhost:4165 is not allowed by Access-Control-Allow-Origin. 当引用网络我得到解决方案,如添加Access-Control-Allow-Origin我不知道在哪里添加它。 我的脚本是: $(document).ready(function () { $.ajax({ type: “Post”, dataType: “json”, contentType: “application/json; charset=utf-8”, url: “http://localhost:63384/ListWebService.asmx/HelloWorld”, success: function (data) { alert(data.d); }, error: function (request, status, error) { alert(request.responseText); } }); }); 我的webservice方法是: [WebMethod] public string HelloWorld() { return “Hello User”; }

服务器响应状态为405(方法不允许)

我是Web服务的新用户,当我尝试在Chrome控制台中运行我的页面( 本地 )时出现以下错误 错误 无法加载资源:服务器响应状态为405(方法不允许) http://localhost:12015/myWebService.asmx?op=GetCategories 这是相关的代码: jQuery的 $.ajax({ url: “http://localhost:12015/myWebService.asmx?op=GetCategories”, type: “POST”, ———— ———— success: function (data) { var categories = data.d; $.each(categories, function (index, category) { category.CategoryId).text(category.CategoryName); }); }, error: function (e) { //always executing ‘error’ only alert(“hello”); } 网络服务url http://localhost:12015/myWebService.asmx [WebMethod] [ScriptMethod(ResponseFormat = ResponseFormat.Json)] public List GetCategories() { //code } 页面URL http://localhost:11761/Default.aspx […]

JQuery JSON调用PHP WebService始终运行“错误”回调

我现在头疼,因为我整天都遇到这个问题,但仍无法修复。 我已经看了谷歌和StackOverflow几个小时,尝试了很多方法(包括从JSON更改为JSONP,检查PHP上的标题,localhost测试),问朋友等等,我仍然卡住了。 也许这只是一个细节,我不知道。 我正在研究Android移动应用程序,为此,我在托管(例如,example.com)上有一个PHP Web服务,因为我使用PHP WS JSON客户端进行测试,所以工作正常。 问题是我现在使用jQuery,JSON和Ajax从我的计算机上的JS文件中调用此WS,我从Google Chrome的调试器控制台得到以下响应: readyState:4 statusText:“确定” responseText :(我需要什么,没有错误) 但是在服务器的响应中, 我总是收到错误回调,而不是成功 。 我读它是因为服务器无法正确解析JSON,但我真的不知道。 我告诉你我的代码。 来自CLIENT.JS: $.ajax({ type: “POST”, crossDomain: true, contentType: “application/json utf-8”, dataType: “json”, url: “http://www.example.com/ws/webservice.php/” + methodName, data: JSON.stringify(window.parameterArray), success: function (response) { alert(‘Success!’); window.resultVar = “Success! ” + response; console.log(response); }, error: function (response) { alert(‘Error’); window.resultVar = […]

如何确保使用jQuery AJAX发送到WebService的数据是通过我的网站而不是一些攻击

我的代码: function HandleSignUp() { var CurrentURL = document.URL; var obj, val; //ajax call started $.ajax({ type: “POST”, url: “../../webservice/GetAjaxDataWebService.asmx/RegisterNewUser”, data: “{‘UserFullName’: ‘” + $(‘#SignUpName’).val() + “‘,’Email’: ‘” + $(‘#SignUpEmail’).val() + “‘,’Password’: ‘” + $(‘#SignUpPassword’).val() + “‘}”, contentType: “application/json; charset=utf-8”, dataType: “json”, success: function (msg) { //msg.d contains the return value from web service call $.colorbox.close(); […]

超出了JavaScriptSerializer.MaxJsonLength。 处理此问题的最佳做法是什么?

我使用jQuery的$ .ajax()函数向客户端发送了大量数据。 我正在ASP.NET Web服务中调用一个返回JSON数据的方法。 对于大多数搜索来说,一切都很棒,但是当我有一个大型数据集要返回时,我遇到了JavaScriptSerializer MaxJsonLength属性的问题。 处理此问题的最佳做法是什么? 我不想随意设置最大长度。 如果返回的数据大于当前最大值,或者我应该重新写入并向客户端发送数据,我可以在Web服务中设置MaxJsonLength吗? 以下是来自Web服务的相关代码段: Dictionary jsonValuePairs = new Dictionary(); //add some data to the dictionary… return System.Web.Script.Serialization.JavaScriptSerializer.Serialize(jsonValuePairs);

JAX-WS:如何使SOAP响应返回HashMap对象

所以我有一个简单的Web服务: @WebMethod(operationName=”getBookList”) public HashMap getBookList() { HashMap books = new HashMap(); Book b1 = new Book(1,”title1″); Book b2 = new Book(2, “title2”); books.put(1, b1); books.put(2, b2); return books; } 书类也很简单: public class Book { private int id; private String title; public int getId() { return id; } public String getTitle() { return title; } public […]

在尝试发布数据时,使用Jquery调用.Net webservice会造成祸患

当数据键没有要发送的数据时,以下代码正确执行,即数据:“{}”一个空的JSON对象,而webservice不带任何参数。 我想将一些数据发布到网络服务,但我遇到了麻烦。 当我尝试将其设置为数据时:“{‘name’:’Niall’,’surname’:’Smith’}”,我收到错误 {“Message”:”Invalid web service call, missing value for parameter: \u0027json\u0027.”,”StackTrace”:” at System.Web.Script.Services.WebServiceMethodData.CallMethod(Object target, IDictionary`2 parameters)\r\n at System.Web.Script.Services.WebServiceMethodData.CallMethodFromRawParams(Object target, IDictionary`2 parameters)\r\n at System.Web.Script.Services.RestHandler.InvokeMethod(HttpContext context, WebServiceMethodData methodData, IDictionary`2 rawParams)\r\n at System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context, WebServiceMethodData methodData)”,”ExceptionType”:”System.InvalidOperationException”} Web服务未执行。 这是我的Jquery调用,将我的数据发布回服务器。 $.ajax({ type: “POST”, url: “/WebServices/BasketServices.asmx/AddItemToBasket”, data: “{‘name’:’niall’}”, // Is this Correct?? contentType: “application/json; charset=utf-8”, dataType: “json”, success: OnItemAddedSuccess }); […]

Javascript / Ajax NTLM身份validation

我正在开发一个与WebServices通信的HTML5移动应用程序。 WebServices使用NTLM身份validation协议。 我很难通过JavaScript处理握手。 NTLM发送401 unauthorized的401 unauthorized作为对我的POST的响应,我没有找到任何回应的方法。 JavaScript可以进行NTLM身份validation吗? 我应该建立一个代理Web服务,例如中间的基本身份validation吗? 我的jQuery调用就像…… $.ajax({ type: “POST”, url: URL, contentType: “text/xml”, dataType: “xml”, data: soapRequest, username: ‘username’, password: ‘password’, xhrFields: { withCredentials: true }, success: processSuccess, error: processError });

使用jquery调用.net webservice的最佳方法是什么?

我想仅使用jquery从另一个域调用.net webservice。 做这个的最好方式是什么? 在托管网页的网站上我需要注意哪些配置更改? 我问这个问题的原因是,我只能控制那个区域。 所以我只能做有限的改变。