Tag: rest

如何使用jquery或java脚本从URL(Rest API)获取JSON数据到UI

我有一个URL“ http://localhost:8888/api/rest/abc ”,它将提供以下json数据。 我想使用Jquery或java脚本在我的UI中获取此数据。 我是在几个小时内尝试这个,但我无法解决它。 请建议我一些解决方案,这将有助于我解决这个问题。 { “My-user”: [ { “link”: [ { “href”: “http://localhost:8888/api/rest/abc/MI/CH”, “rel”: “self”, “type”: “application/my.My.My-user+xml”, “title”: “rln” }, { “href”: “http://localhost:8888/api/rest/cabin?MI=mi&CH=ch”, “rel”: “some relation”, “type”: “application/my.My.My-cabin+xml”, “title”: “rln1” } ], “My-user-list”: [ { “name”: “cuba”, “Explanation”: “bark” } ], “CH”: “ch”, “MI”: “mi”, “password”: “xyz”, }, { “link”: [ { “href”: […]

WCF跨域使用Jsonp错误未捕获SyntaxError:意外的令牌:

我试图使用jQuery在跨域调用webservice。 这是我的代码来调用服务 $(document).ready(function () { $.ajax({ type: ‘GET’, async: false, contentType: “application/json”, url: “http://localhost:52136/Service1.svc/Helloworld?callback=func_callbk”, dataType: “jsonp”, success: function (data) { alert(‘sucesss’) alert(data.d); }, error: function (data) { alert(data); } }); }); func_callback = function (data) { alert(data.data.people[0].id); } 我从服务返回简单的字符串。 public string HelloWorld() { return “Hello World”; } 服务是从,但我收到错误 未捕获的SyntaxError:意外的令牌: 在Chrome的控制台窗口中。 我从浏览中调用服务时收到此字符串: {“HelloWorldResult”:”Hello World”} 请让我知道我哪里错了? 提前致谢。

REST Web服务与类似RPC的服务有何区别?

我有一个使用AJAX从服务器获取JSON数据的Web应用程序。 它要求用户首先使用浏览器登录,以便设置cookie。 仅使用GET和POST谓词,其中GET用于检索数据, POST用于任何修改数据的操作。 据我所知,REST与上述方法的不同之处在于, 每次请求都会发送用户认证信息,并且也会使用PUT和DELETE动词。 我的问题是,如果终点仅仅是用户的浏览器,那么REST Web服务对类似RPC的方法有什么好处? 我可以理解当客户端未知时REST是如何有益的,但是当我只使用jQuery ajax调用时,与类似RPC的方法相比,它的好处还是值得吗?

为什么我的REST方法没有被这个jQuery调用?

我有一个类似的问题关于jQuery按钮点击处理程序代码在这里根本没有被解雇。 在这种情况下,它被触发(当jQuery被添加到静态页面(Index.cshtml)),但我的REST方法仍未被访问。 控制台消息解释原因是: The resource cannot be found. Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly. Requested URL: /LandingPage/GetQuadrantData Version Information: Microsoft .NET Framework […]

来自javascript的HTTP请求使用包括标头的原始消息

我知道如何使用jQuery或XMLHttpRequest从javascript向我的REST api发出HTTP请求。 我现在要做的是在不设置标题值属性的情况下发出请求。 HTTP请求消息包括: 请求行,例如GET /images/logo.png HTTP / 1.1,它从服务器请求名为/images/logo.png的资源 标题,例如Accept-Language:en 空行 可选的邮件正文 对我的api的请求应该是这样的: GET /myapi/myresource/1234 HTTP/1.1 Host: localhost:51127 Content-Type: application/x-www-form-urlencoded Accept: application/json, text/csv Authorization: Basic 我想打开一个到localhost的连接:51127,发送上面的文字,然后得到回复。 这可能在JavaScript中? 更新:我知道如何设置标头。 我只想以不同的方式做到这一点。 有很多方法可以“构建”包含标题的请求并发送它。 我只是想手动构建它。

jquery中的angularjs拦截器的等价物

我想截取来自REST请求的响应,因为$ httpProvider.interceptors在agularjs中执行: https ://docs.angularjs.org/api/ng/service/ $ http 我正在使用jQuery创建一个非常小的接口,并且不想为此使用angular。 你有想法吗? 实际上我要修复的真正问题与此相同: 在跨域中处理REST响应的301和位置标头 但我想用jquery以同样的方式解决它。 我尝试了这个没有成功:(只捕获0状态永远不会301 …) 如何在事件处理程序之前拦截jQuery中的ajax响应? 为了回答V31,我这样做了: $.ajaxSetup({ error: function(jqXHR, textStatus, errorThrown) { if (jqXHR.status == 301) { alert(“Element not found.”); } else { console.log(jqXHR.status); console.log(“Error: ” + textStatus + “: ” + errorThrown); } } }); 这是我的控制台: 哪个说: XMLHttpRequest cannot load *******. The request was redirected […]

带有Jersey / JAX-RS的AJAX JSONP Restful服务

我已经阅读了很多关于stackoverflow的问题,但我没有解决我的问题。 这是我的Restful服务: @GET @Path(“/GetAllProducts”) @Produces(MediaType.APPLICATION_JSON) public String getAllProducts() { return “{\”name\”:\”MAC\”, \”quantity\”:\”10\”}”; } 它在浏览器上工作正常但是当我使用AJAX时,它没有显示错误但显示了一个弹出窗口:失败的对象[对象] 我的AJAX代码: $.ajax({ url: “http://localhost:8080/Restful/REST/WebService/GetAllProducts”, type: ‘GET’, contentType: “application/json; charset=utf-8”, dataType: “jsonp”, success: function() { alert(“Success”); }, error: function(e) { alert(‘Failed! ‘ + e); } }); 我试图添加:“crossDomain:true”但它没有用。 请帮我! 谢谢!

获取响应头jquery ajax post Set-Cookie

我正在使用YouTrack进行跟踪系统。 Youtrack附带了一个restWeb服务,您可以调用该服务从系统获取信息。 我有获得授权的问题,并且一直被禁止。 我的post到他们的登录,我得到了“登录确认”,如果我签入了firebug,我可以看到标题设置正确,但是没有创建cookie。 为此,我需要从响应头,Set-Cookie中获取值。 post看起来像这样。 $.post(youTrackLoginUrl, { login: “restUser”, password: “qwerty” }, function(data, text, xhr) { // do something }); 响应和请求看起来像这样。 响应标头: HTTP / 1.1 200 OK服务器:Apache-Coyote / 1.1 Set-Cookie:YTJSESSIONID = 91541168A3E0FF9BBB02A8D427D70127; Path = / jetbrains.charisma.main.security.PRINCIPAL = NjVlODRiZTMzNTMyZmI3ODRjNDgxMjk2NzVmOWVmZjNhNjgyYjI3MTY4YzBlYTc0NGIyY2Y1OGVlMDIzMzdjNTpyZXN0VXNlcg; Expires = Wed,09-Oct-2013 09:47:48 GMT; Path = / Cache-Control:no-cache,no-store,no-transform,must-revalidate Access-Control-Allow-Origin:a.domain.com Access-Control-Allow-Credentials:true Content-Type:application / xml; charset = […]

OAuth,PHP,Rest API和curl提供400 Bad Request

我们使用了带有OAuth 1.0的car2go Rest-API ,获得了几个应用程序。 我们所有的网络应用程序在2天前停止工作。 所有curl POST请求现在都失败,出现以下错误: 400 Bad Request Your browser sent a request that this server could not understand. Error code: 53 Parser Error: [Content-Length: -] 我花了很多时间试图找出问题是否是我的oauth工作流程。 但最终所有参数和签名和内容都是正确的。 我通过Postman成功启动了POST (REST-Client) 所以我的结论是,不知何故,curl的PHP代码突然不再起作用了。 这是(非常难看的)curlfunction。 关于curl POST的大多数教程的不同之处在于,我传递的是一个已经附加了所有参数的完整URL,所以我不需要CURLOPT_POSTFIELDS 。 function curlAPI($params) { //open connection $ch = curl_init(); $url = $params[‘url’]; curl_setopt($ch,CURLOPT_HEADER,false); //set the url, number of POST […]

一个Datatables.net表,其中包含来自Sharepoint 2010 REST API的多个ajax调用

我是新来的,所以请提前告诉我冗长的问题。 我是SP2010的新手,到目前为止,按照以下教程对我的SP列表进行JQuery Ajax调用: 谁需要数据视图Web部件? SharePoint REST和DataTables.net 我(和每个人)的问题是,SP2010 listdata.svc只返回JSON中的前1000个条目。 然而,教程建议使用预过滤方法来仅调用用户需要的数据,在我的情况下,我想将所有200多个条目加载到表中,然后让用户选择/过滤他/她要。 我设法做了两个Ajax调用( 一个有前1000个条目,另一个有剩余的2000个 – 用于测试,以便于查看,其中哪些进入表中 ),并且在调试器中两个GET请求都进行out并返回状态200-OK和数据,但只有其中一个被加载到表中。 问题:是否有任何方法在传递给Datatable之前组合返回的jqXHR响应,或者是否有任何设置,在表初始化之后,第二个数据不会覆盖第一个? 我知道,对于大多数人来说,多个ajax调用是“不行”,但在我的情况下,由于我的服务器的速度和表的使用频率,这不是问题,但到目前为止我找到了解决方案填充多个表的多个调用主题。 我的代码到目前为止: function LoadData() { var call = $.ajax({ url: “https://SP2010_siteaddress.com/site/_vti_bin/listdata.svc/Listname?$select=Data1,Data2,Data3,Data4,Data5”, type: “GET”, dataType: “json”, headers: { Accept: “application/json;odata=verbose” } }); var call2 = $.ajax({ url: “https://SP2010_siteaddress.com/site/_vti_bin/listdata.svc/Listname?$select=Data1,Data2,Data3,Data4,Data5&$skiptoken=2000”, type: “GET”, dataType: “json”, headers: { Accept: “application/json;odata=verbose” } }); (call, call2).done(function (data,textStatus, […]