首页 > 其他分享 >swoole协程curl请求方法

swoole协程curl请求方法

时间:2024-12-07 10:43:57浏览次数:5  
标签:YurunHttp http swoole Yurun Util result 协程 curl

function swoole_http_get($urls){
    $result = [];
    \Yurun\Util\YurunHttp::setDefaultHandler(\Yurun\Util\YurunHttp\Handler\Swoole::class);
    $scheduler = new \Swoole\Coroutine\Scheduler();
    foreach ($urls as $url) {
        $scheduler->add(function () use ($url,&$result) {
            $http = new \Yurun\Util\HttpRequest();
            $http->Headers([
                'Content-Type'=>'application/json; charset=UTF-8',
                'User-Agent' => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36',
            ]);
            $response = $http->get($url, [], ['timeout' => 5]);
            $resp =  $response->json(true);$result[] =  $resp;
        });
    }
    $scheduler->start();
    return $result;
}

 

  • 此方法需要安装YurunHttp扩展包,composer require yurunsoft/yurun-http。 文档地址:https://doc.yurunsoft.com/YurunHttp/165
  • 此方法目前是get请求,需要post,自行参考文档封装即可。
  • 使用需要安装swoole扩展,并且深入了解swoole运行模式和php-fpm的差异。

标签:YurunHttp,http,swoole,Yurun,Util,result,协程,curl
From: https://www.cnblogs.com/itbaby/p/18591884

相关文章

  • 【协程库】协程调度
    协程调度是指管理和控制多个协程在程序中的执行顺序和时机的过程。协程是一种轻量级的、用户态的线程,允许在单个线程内实现并发执行。协程调度器负责决定何时切换协程、哪个协程应该运行,以及如何协调协程之间的执行。在前面的协程模块中,对于每个协程,都需要用户手动调用......
  • curl post json数据
    参考:https://www.cnblogs.com/kelelipeng/p/17129941.htmlcurl-XPOSThttp://127.0.0.1:9991/api/v1/partner/add-H"Content-Type:application/json"-d'{"name":"yl-online-bn","description":"indiapartneronli......
  • 进程、线程、协程的关系
    系统和多个线程的关系:一个系统内可以创建多个进程,一个进程可以类比为一个应用程序,一个进程内可以创建多个线程,协程是Go语言首创,通过在一个线程内代理当前线程的所有系统的调度权,模拟出多个子线程——称作协程,以达到优化效率的目的。线程和协程的关系:协程Coroutine的精髓......
  • Linux基础——下载工具(wget、curl、git)
    一、curl下载curl-C--fLOhttps://mirrors.cmecloud.cn/bclinux/oe21.10/cr/update/x86_64/Packages/openssh-8.2p1-29.oe2003sp4.x86_64.rpm#下载文件到当前位置curl-O https://mirrors.cmecloud.cn/bclinux/oe21.10/cr/update/x86_64/Packages/openssh-8.2p1-29.oe2003......
  • golang: 用协程异步写日志
    一,代码1,全局文件://日志消息结构体typeLogMessagestruct{ Levelstring Messagestring}//通道varLogChanchanLogMessage//日志文件句柄varGlobalLogFile*os.File//异步日志函数funcAsyncLog(logChchanLogMessage){ for{ select{ casems......
  • cURL全攻略:从浏览器复制到JMeter/Postman的一键导入
    前言        在当今的数字化时代,cURL作为一款强大的命令行工具和数据传输库,已成为开发、调试和测试过程中不可或缺的利器。它支持多种协议,如HTTP、HTTPS等,能够轻松实现数据的上传与下载,发送各种HTTP请求,并灵活设置请求头和Cookies。本文旨在详细介绍cURL的基本概念、......
  • 如何用协程扒光一部小说
    前言本次爬取的小说对象是《西游记》,如标题所示,利用协程来完成,为何利用协程?协程(Coroutine)是一种轻量级的程序执行单元,它可以在一个线程内实现多个任务的并发执行。通过协程我可以更快的爬取小说的内容和下载小说的内容。相比于我之前所写的单线程来说,效率提高了n倍。虽然我所爬......
  • 线程和协程
    线程(Thread):想象线程就像是公司的员工。每个员工都有自己的任务和责任,但他们共享公司的资源(例如办公室、打印机等)。员工(线程)的上下班(开始和结束线程)以及工作调度(线程切换)由公司管理层(操作系统)控制,想想就挺残忍的。如果公司要新增一个员工或者安排员工之间的工作,这需要管理层的直接......
  • Python_异步编程-并发编程-协程和future
    操作系统创建线程Unix进程的设计思想,实现了forkexecwaitexit四个精巧的系统调用来支持对进程的灵活管理。父进程进程通过fork系统调用创建自身的副本(子进程);称为“子进程”的副本可调用exec系统调用用另一个程序覆盖其内存空间,这样就可以执行新程序了;......
  • curl,nc和telnet的用法以及其他常用工具(nc代理与重定向)
      curl 是一个功能强大的命令行工具和库,用于在网络上传输数据。它支持多种协议,包括HTTP、HTTPS、FTP、FTPS、SFTP、SMTP、POP3、IMAP等。curl 的名称来源于“ClientforURLs”。下面是对 curl 工具的详细介绍,包括基本用法、常用选项以及实际应用场景。基本功能发送......