Tag: Ajax

如何使用$ http POST urlencoded表单数据?

我是AngularJS的新手,一开始我想用AngularJS开发一个新的应用程序。 我正在尝试使用我的Angular App中的$http进行AJAX调用到服务器端。 为了发送参数,我尝试了以下内容: $http({ method: "post", url: URL, headers: {'Content-Type': 'application/x-www-form-urlencoded'}, data: $.param({username: $scope.userName, password: $scope.password}) }).success(function(result){ console.log(result); }); 这是工作,但它也使用jQuery $.param 。 为了消除对jQuery的依赖,我试着: data: {username: $scope.userName, password: $scope.password} 但这似乎失败了。 然后我尝试了params : params: {username: $scope.userName, password: $scope.password} 但这似乎也失败了。 然后我试着JSON.stringify : data: JSON.stringify({username: $scope.userName, password: $scope.password}) 我发现了这些可能的答案,但没有成功。 我做错了什么? 我相信,AngularJS会提供这个function,但是如何?

使用jQuery $ .ajax来调用一个PHP函数

这可能是一个简单的答案,但我使用jQuery的$ .ajax来调用一个PHP脚本。 我想要做的事情基本上把PHP脚本放在一个函数中,并从JavaScript调用PHP函数。 <?php if(isset($_POST['something'] { //do something } ?> 对此 <?php function test() { if(isset($_POST['something'] { //do something. } } ?> 我将如何在JavaScript中调用该函数? 现在我只是使用$ .ajax列出的PHP文件。

如何将数据作为表单数据而不是请求有效载荷发布?

在下面的代码中,AngularJS $http方法调用URL,并将xsrf对象作为“Request Payload”提交(如Chromedebugging器networking选项卡中所述)。 jQuery $.ajax方法执行相同的调用,但将xsrf作为“表单数据”提交。 我如何使AngularJS提交xsrf作为表单数据而不是请求有效载荷? var url = 'http://somewhere.com/'; var xsrf = {fkey: 'xsrf key'}; $http({ method: 'POST', url: url, data: xsrf }).success(function () {}); $.ajax({ type: 'POST', url: url, data: xsrf, dataType: 'json', success: function() {} });

如何获得跨源资源共享(CORS)的后期请求工作

我有一台机器在我的本地局域网(machineA)有两个Web服务器。 第一个是XBMC的内置(在8080端口),并显示我们的图书馆。 第二个服务器是一个CherryPy python脚本(端口8081),我用它来触发文件转换的需求。 文件转换由来自XBMC服务器提供的页面的AJAX POST请求触发。 转到http:// machineA:8080显示库 图书馆被显示 用户点击“转换”链接发出以下命令 – jQuery的Ajax请求 $.post('http://machineA:8081', {file_url: 'asfd'}, function(d){console.log(d)}) 浏览器使用以下标题发出HTTP OPTIONS请求; 请求标题 – 选项 Host: machineA:8081 User-Agent: … Firefox/4.01 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Origin: http://machineA:8080 Access-Control-Request-Method: POST Access-Control-Request-Headers: x-requested-with 服务器响应以下内容; 响应标题 – 选项(状态= 200确定) Content-Length: 0 Access-Control-Allow-Headers: * Access-Control-Max-Age: 1728000 […]

处理从ajax文件下载文件

我有一个JavaScript应用程序发送一个HTTP请求到一个特定的URL。 响应可能是一个JSONstring,也可能是一个文件(作为附件)。 我可以在我的ajax调用中轻松检测Content-Type和Content-Disposition,但是一旦我检测到响应包含文件,我该如何提供客户端来下载它? 我已经阅读了许多类似的线程,但没有一个提供了我正在寻找的答案。 请,请不要发布答案,build议我不应该使用Ajax的,或者我应该redirect浏览器,因为这是没有一个选项。 使用纯HTML格式也不是一个选项。 我需要的是向客户端显示一个下载对话框。 可以这样做,怎么样? 编辑: 显然,这是不能做到的,但是有一个简单的解决方法,正如接受的答案所build议的那样。 对于将来遇到这个问题的人来说,我是这样解决的: $.ajax({ type: "POST", url: url, data: params, success: function(response, status, request) { var disp = request.getResponseHeader('Content-Disposition'); if (disp && disp.search('attachment') != -1) { var form = $('<form method="POST" action="' + url + '">'); $.each(params, function(k, v) { form.append($('<input type="hidden" name="' + k + '" […]

AJAX请求callback使用jQuery

我是使用jQuery来处理AJAX的新手,并且已经编写了一个基本脚本来获取基础知识。 目前,我正在发送一个AJAX请求到同一个文件,我希望做一些额外的处理,根据该AJAX调用的结果。 这是我的代码: **/*convertNum.php*/** $num = $_POST['json']; if (isset($num)) echo $num['number'] * 2; ?> <!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <style type="text/css"> td {border:none;} </style> </head> <body> <table width="800" border="1"> <tr> <td align="center">Number To Send<br /><input type="text" id="numSend" size="40%" style="border:2px solid black;"></td> <td align="center">Number Returned<br /><input type="text" id="numReturn" size="40%" readonly></td> </tr> <tr><td align="center" colspan="4"><input type="button" […]

jQuery AJAXfile uploadPHP

我想实现一个简单的file upload在我的Intranet页面,尽可能最小的设置。 这是我的HTML部分: <input id="sortpicture" type="file" name="sortpic" /> <button id="upload">Upload</button> 这是我的JS jquery脚本: $("#upload").on("click", function() { var file_data = $("#sortpicture").prop("files")[0]; var form_data = new FormData(); form_data.append("file", file_data); alert(form_data); $.ajax({ url: "/uploads", dataType: 'script', cache: false, contentType: false, processData: false, data: form_data, type: 'post', success: function(){ alert("works"); } }); }); 在网站的根目录下有一个名为“uploads”的文件夹,其中更改了“users”和“IIS_users”的权限。 当我用文件格式select一个文件并按下上传button时,第一个警告返回“[对象FormData]”。 第二个提醒没有被调用,“上传”文件夹也是空的!? 有人可以帮我找出什么是错的? 另外下一步应该是,用服务器端生成的名称重命名文件。 也许有人可以给我一个这样的解决scheme。

在 – window.location.hash – 更改?

我正在使用Ajax和哈希导航。 有没有办法检查window.location.hash是否像这样改变? http://example.com/blah#123到http://example.com/blah#456 如果我在文档加载时检查它,它将起作用。 但是,如果我有基于#hash的导航,当我按下浏览器上的后退button时不起作用(所以我从#456跳转到#123)。 它显示在地址框内,但我无法用JavaScript来捕捉它。

在stream行的浏览器中允许多less个并发的AJAX(XmlHttpRequest)请求?

在Firefox 3中,每个域的答案是6个:一旦第七个XmlHttpRequest(在任何选项卡上)被激发,它就被排队,直到其他6个完成。 其他主stream浏览器的数字是多less? 另外,有没有我的用户修改他们的浏览器设置有办法解决这些限制? 例如,jsonp请求(使用脚本标记注入而不是XmlHttpRequest对象)的数量是否有限制? 背景:我的用户可以将XmlHttpRequests从一个网页发送到服务器,要求服务器在远程主机上运行ssh命令。 如果远程主机closures,那么ssh命令会花费几分钟的时间,最终会阻止我的用户执行任何进一步的命令。

使用Ajax以一种forms上传数据和文件?

我使用jQuery和Ajax来提交数据和文件,但是我不知道如何同时发送数据和文件。 我目前对这两种方法几乎一样,但数据收集到一个数组的方式是不同的,数据使用.serialize(); 但文件使用= new FormData($(this)[0]); 是否有可能将两种方法结合起来,以便能够通过Ajax将文件和数据以一种forms上传? 数据jQuery,Ajax和HTML $("form#data").submit(function(){ var formData = $(this).serialize(); $.ajax({ url: window.location.pathname, type: 'POST', data: formData, async: false, success: function (data) { alert(data) }, cache: false, contentType: false, processData: false }); return false; }); <form id="data" method="post"> <input type="text" name="first" value="Bob" /> <input type="text" name="middle" value="James" /> <input type="text" name="last" value="Smith" /> […]