【问题标题】:PHP how to consume a remote https WCF webservicePHP如何使用远程https WCF webservice
【发布时间】:2015-05-06 15:52:39
【问题描述】:

我正在尝试使用 get 或 post with php 来使用 WCF Web 服务,这是一个很好的示例,它可以在本地工作,但我需要让它在远程工作。

该代码是一个很好的测试示例,因为它允许您查看 get 和 post 请求。

这是 url 的模型(不是真实的)。

https://anyweb.com/anyservice.svc/GetShops

这是来自服务器的错误

异常消息是“'encryptedTicket' 的值无效” 参数。'

我应该怎么做才能解决它?似乎没有太多关于这方面的文章。

下面的代码

<?php
echo 'Call the service using GET <br>';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://anyweb.com/anyservice.svc/GetShops".
                    "");
curl_setopt($ch,CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Accept: application/json'));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

$result = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);

print_r($result);
echo '<br>';

echo '<br>Call the service using POST <br>';


$transmitObject = array("fname" => "MASTER", "lname" => "POGI");




$jsonObject = json_encode($transmitObject);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://anyweb.com/anyservice.svc/GetShops");
curl_setopt($ch,CURLOPT_POST, true);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Accept: application/json'));
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonObject);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

$result = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);

curl_close($ch);
print_r($result);
?>

【问题讨论】:

  • 它告诉你你在encryptedTicket 中传递了一个它无法识别的值。

标签: php web-services wcf https


【解决方案1】:

您为 encryptedTicket 发布的值或数据类型可能是错误的 阅读他们的文档,看看他们的网络服务在该领域会收到什么

【讨论】:

    猜你喜欢
    • 2016-03-17
    • 2015-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多