当前位置: 首页 > 面试题库 >

如何使file_get_contents()与HTTPS一起使用?

南门烈
2023-03-14
问题内容

我正在设置信用卡处理程序,需要对CURL使用替代方法。当我使用测试服务器(未调用SSL
URL)时,以下代码运行良好,但是现在当我在使用HTTPS的工作服务器上对其进行测试时,它失败,并显示错误消息“无法打开流”。

function send($packet, $url) {
  $ctx = stream_context_create(
    array(
      'http'=>array(
        'header'=>"Content-type: application/x-www-form-urlencoded",
        'method'=>'POST',
        'content'=>$packet
      )
    )
  );
  return file_get_contents($url, 0, $ctx);
}

问题答案:

请尝试以下脚本,以查看您的php脚本是否有https包装器。

$w = stream_get_wrappers();
echo 'openssl: ',  extension_loaded  ('openssl') ? 'yes':'no', "\n";
echo 'http wrapper: ', in_array('http', $w) ? 'yes':'no', "\n";
echo 'https wrapper: ', in_array('https', $w) ? 'yes':'no', "\n";
echo 'wrappers: ', var_export($w);

输出应该是这样的

openssl: yes
http wrapper: yes
https wrapper: yes
wrappers: array(11) {
  [...]
}


 类似资料:
  • 问题内容: 我有一台使用HTTPS且使用Firefox的Grizzly制造的REST服务器。这是代码: 现在,我尝试用Java达到它: 得到: 从我在网上找到的示例来看,似乎需要设置一个Truststore,然后再设置某种TrustManager。对于我这个简单的小项目,这似乎需要大量代码和设置工作。有没有更简单的方法可以说..我信任此证书并指向.cert文件? 问题答案: 当您说“是否有一种更简

  • 我有一个问题,在我的应用程序Android中使用soap请求。我使用Ksoap2库。这是我的代码: }

  • 问题内容: 我将使用IntelliJ Community Edition的Git版本控制来创建我打算开发的程序的分支。我正在努力使自己适应其功能,并且遇到了障碍。 我遵循网页 http://wiki.jetbrains.net/intellij/Using_Git_Locally上的说明,尽管我按其要求进行操作,但是当我到达Image5时,在Default(默认)下找到了一个空列表。 我认为这可能

  • 作为参考,我们有两个选项可以让Multipart与Spring Security一起工作: 在Spring Security之前放置MultipartFilter 在行动中包括CSRF令牌 对于第一种选择,我尝试了以下方法: 创建安全应用程序初始化类: > 在application.properties中更改Spring安全过滤器顺序 然后添加FilterRegistrationBean 不幸的是

  • 问题内容: 我知道这是一个基本问题,但是如果这个问题太愚蠢了,我似乎找不到答案,我很抱歉,但是我们开始: 我应该使用SQL Server(到目前为止没有问题)和Java(喜欢Java,这里也没问题),但是现在:我应该怎么做才能使组合起作用?我得到了: JRE 1.6 和 sqljdbc4.jar …在将sqljdbc4.jar放入我的类路径之前,我已经在其中添加了sqljdbc.jar并通过测试程

  • 问题内容: 我正在尝试使用lodash 以这种方式在指令中使用它: 存在: 但是不起作用,因此,没有任何 重复 。如果我将指令更改为它将起作用。 通过已经包含在之前 。我该如何运作? 问题答案: 我更喜欢在全局范围内引入“ _”并且可以注入以进行测试。