• php模拟http请求


    在http简析中,我们提到了浏览器请求资源的一个流程,那么这个流程能不能用php来模拟呢?答案是肯定的。

    php模拟http请求需要实现以下步骤:

    1.连接apache服务器

    使用fsockopen:专门用于连接服务器,得到一个连接资源

    2.写入http协议

    使用fwrite向资源写入内容

    3.接收数据

    请求成功后返回的数据会被存放在资源中

    4.解析数据:

    使用fgets,和fgetc函数

    实现代码:

    <?php

        //php模拟发出http请求
        //1.连接目标服务器apache
        $f=fsockopen('localhost',98,$erron,$error);
        //2.写入http协议
        //2.1拼凑http协议
        //请求行
        $http="GET /phpstudy/index.php HTTP/1.1 ";
        //请求头
        $http .="Host:localhost ";
        //空行
        $http .=" ";

        //2.2写给apache服务器
        if(fwrite($f,$http))
        {
            //写入成功
            //3.数据已经接收并存放在f资源中
            //4.解析资源
            //循环遍历
            while($line=fgets($f,1024))
            {
                //输出
                echo $line ."</br>";
            }
        }

  • 相关阅读:
    [LeetCode] Find Minimum in Rotated Sorted Array
    [LeetCode] Sort Colors
    [LeetCode] Invert Binary Tree
    最小的k个数
    连续子数组最大和
    [LeetCode] Majority Element
    [LeetCode] Reverse Linked List
    [LeetCode] Lowest Common Ancestor of a Binary Search Tree
    [LeetCode] Kth Smallest Element in a BST
    三种方式控制GPIO
  • 原文地址:https://www.cnblogs.com/wangjingwangjing/p/5231154.html
Copyright © 2020-2023  润新知