PHP的 - 如何通过在Curl的cron选项卡执行ajax方法?

weixin_38082682 2019-09-12 03:30:17

我想知道如何让我的ajax请求在crontab中运行? 我在这里有一个ajax请求,从api获取数据,对于每个数据我正在执行ajax post请求来更新我的数据库中的一行。 我该如何在Curl中做到这一点? 这里是我的脚本, function getDataFs() { var _token = $("input[name='_token']").val(); $.ajax({ url: 'https://url/api/employees', type: 'GET', dataType: 'json', xhrFields: { withCredentials: true }, success: function(response){ console.log(response); for(i=0; i < response.length; i++) { $.ajax({ url: '/api/update_employees_list', headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }, type: 'POST', dataType: 'json', data: { 'employee_data': response[i], '_token': _token }, success: function(response){ console.log(response); } }) } } }); } 我也通过请求头和XHR领域, 我希望有人能帮助我,如果没有可能在阿贾克斯,你能帮帮我在Curl或任何可能的解决方案上完成此操作, 谢谢!








...全文
32 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38084861 2019-09-12
  • 打赏
  • 举报
回复

你可以做下面的事情并在Crontab中添加这个文件。 //getting all initial response $raw_response = doCurl('https://url/api/employees', false, 'GET'); $response = json_decode($raw_response); //iterate them foreach ($response as $value) { //set your headers $headers = array(); //set your post data $post_arr = array(); //make your sub requests. doCurl($url, $headers, 'POST', $post_arr); } function doCurl($url, $headers, $method = 'GET', $post_arr = array()){ $ch = curl_init($url); curl_setopt($ch, CURLOPT_URL, $URL); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method); if ($method === 'POST') { curl_setopt($ch, CURLOPT_POSTFIELDS, $post_arr); } if (!empty($headers)) { curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); } curl_setopt($ch, CURLOPT_TIMEOUT, 30); $res = curl_exec($ch); curl_close($ch); return $res; }
weixin_38110434 2019-09-12
  • 打赏
  • 举报
回复

AJAX是一种仅适用于您的浏览器的技术,但它基于常规的HTTP请求。使用Firefox开发者控制台,您可以简单地将执行的AJAX请求复制到cURL调用。这可以用在你的cronjob中

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧