• 一个php开发的用于路由器的小功能


    最近接到一个需求,假设有A、B、C 三台主机。现A主机要访问C主机上的一个脚本,并且根据A传递的参数给C主机,同时接受C主机返回来的数据。但是现在A主机不能直接通过url、IP访问C主机,需要借由主机B。主要思路:A主机请求B主机并发送数据给B主机,B主机把接受到的数据再发送给C主机,同时接受C主机返回的数据,最后再把此数据返回给A主机。

      具体程序如下:

    <?php

      //绑定的内网的 url 链接
      $intranet_url = 'http://localhost/test.php';

      //POST 接收传来的数据
      $post_param = $_REQUEST;



      //发送数据
      $post_data = $post_param;

      $return_post = send_post($intranet_url, $post_data);
      var_dump($return_post);
      return $return_post;


    /**提交POST请求**/
    function send_post($url, $post_data)
    {
      $postdata = http_build_query($post_data);

      $options = array(
          'http' => array(
              'method' => 'POST',
              'header' => 'Content-type:application/x-www-form-urlencoded',
              'content' => $postdata,
              'timeout' => 30 // 超时时间(单位:s)
          )
      );

      $context = stream_context_create($options);

      try{
          $result = file_get_contents($url, false, $context);
          return $result;
      }
      catch(Exception $e)
      {
          $error = 'error:连接超时';
          return $error;
      }
    }

    ?>

  • 相关阅读:
    ipmi_msghander源码分析
    简析Linux内核中断机制
    Python基础24 类型标注
    ETCD快速入门02 ETCD安装
    ETCD快速入门01 ETCD概述
    JavaScript快速入门04运算符
    Linux中监控流量常用命令
    JavaScript快速入门05基本语句
    Linux 基础教程 46cURL详细讲解
    Postman Mock快速入门
  • 原文地址:https://www.cnblogs.com/penciler/p/3816493.html
Copyright © 2020-2023  润新知