- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在 CURLOPT_URL 中传递我的变量时遇到问题,我尝试了不同的语法,但到目前为止没有好的结果,所以我希望你能帮助我。
这是我的代码:
<?php
$header = array(
"authorization: Bearer NDAxNTVhZTgtODQ5MC00MDBjLTg1MmUtNTAwMjZiMWVjNzZiODMzMTVmYzUtZTFi",
"cache-control: no-cache",
"postman-token: 7d61200d-8ce7-0fb1-8cee-fdeddc67eea4");
$tab_ligne = file('roomid.txt');
$roomcount = count($tab_ligne);
$count = 0;
while ($count != $roomcount){
$ouvre=file('roomid.txt');
$temp = $ouvre[$count];
echo $temp;
$cu = curl_init();
curl_setopt($cu,CURLOPT_URL, "https://api.ciscospark.com/v1/messages?roomId=" . $temp . "&max=1");
curl_setopt($cu,CURLOPT_RETURNTRANSFER,TRUE);
curl_setopt($cu,CURLOPT_ENCODING,"");
curl_setopt($cu,CURLOPT_MAXREDIRS,10);
curl_setopt($cu,CURLOPT_TIMEOUT,30);
curl_setopt($cu,CURLOPT_HTTP_VERSION,CURL_HTTP_VERSION_1_1);
curl_setopt($cu,CURLOPT_CUSTOMREQUEST,"GET");
curl_setopt($cu, CURLOPT_POSTFIELDS, "{}");
curl_setopt($cu, CURLOPT_HTTPHEADER, $header);
$resp= curl_exec($cu);
$err = curl_error($cu);
echo $resp;
curl_close($cu);
...
当我使用此代码时出现此错误:
{"message":"获取事件失败。","errors":[{"description":"获取事件失败。"}],"trackingId":"NA_0c7ff82c-6b2e-4973- 84dd-b0213ab4fd3a”
感谢帮助
最佳答案
你可以试试下面的代码:
class sparkAPIV1 {
//GLOBAL DATA
var $SparkAccessToken = NULL;
var $callBackUrl = NULL;
var $roomId = NULL;
//JSON URLs IN SPARK API
//THESE ARE THE URL LOCATIONS THAT YOU CAN POST OR GET JSON DATA TO AND FROM
var $roomsurl = 'https://api.ciscospark.com/v1/rooms';
var $messagesurl = 'https://api.ciscospark.com/v1/messages';
var $webhookurl = 'https://api.ciscospark.com/v1/webhooks';
var $peopleurl = 'https://api.ciscospark.com/v1/people';
var $membershipsurl = 'https://api.ciscospark.com/v1/memberships';
/**
* createWebHook| Used to create a WebHook within a room
* @return string Returns the UUID of the WebHook that was created
*/
function createWebHook()
{
$data = array(
'name' => 'MyCallback' . substr($roomId,-6),
'targetUrl' => $this->callBackUrl,
'resource' => 'messages',
'event' => 'created',
'filter' => 'roomId=' . $this->roomId
);
$options = array(
'http' => array(
'header' => "Authorization: Bearer $this->SparkAccessToken\r\nContent-type: application/json\r\n",
'method' => 'POST',
'content' => json_encode($data),
),
);
$context = stream_context_create($options);
$result = json_decode(file_get_contents($this->webhookurl, false, $context));
return $result->id;
}
/**
* createRoomMessage AUsed to add a message into a room
* @param string $message Used to contain the string to insert into the room as a message
* @return null no returnable value
*/
function createRoomMessage($message)
{
$data = array(
'roomId' => $this->roomId,
'text' => $message,
);
$options = array(
'http' => array(
'header' => "Authorization: Bearer $this->SparkAccessToken\r\nContent-type: application/json\r\n",
'method' => 'POST',
'content' => json_encode($data),
),
);
$context = stream_context_create($options);
$result = json_decode(file_get_contents($this->messagesurl, false, $context));
return;
}
/**
* getRoomMessages Used to retrieve $max number of messages in a room
* @param numeric $max Used to control the number of messages retrieved from the room
* @return array An array of messages within the room
*/
function getRoomMessages($max=10)
{
$data = array(
'roomId' => $this->roomId,
'max' => $max,
);
$options = array(
'http' => array(
'header' => "Authorization: Bearer $this->SparkAccessToken\r\nContent-type: application/json\r\n",
'method' => 'GET'
),
);
$context = stream_context_create($options);
$result = json_decode(file_get_contents($this->messagesurl . '?' . http_build_query($data), false, $context));
foreach ($result as $item)
{
foreach ($item as $key=>$value)
{
$dataSet[] = $value->text;
}
}
return $dataSet;
}
}
//EXAMPLE USAGE
$sparkClass = new sparkAPIV1();
$sparkClass->SparkAccessToken = 'MySparkUserAccessToken'; //YOUR SPARK USER'S ACCESS TOKEN
$sparkClass->callBackUrl = 'MyCallBackURL'; //URL YOU WANT THE JSON CALLBACK DATA TO GO TO
$sparkClass->roomId = 'MySparkRoomId'; //UUID OF SPARK ROOM
echo 'Webhook ID: ' . $sparkClass->createWebHook(); //CREATES A WEBHOOK FOR THE USER, IN THE ROOM SPECIFIED BY THE ROOM ID
$sparkClass->createRoomMessage('HELLO WORLD!'); //ISSUES A JSON POST TO THE ROOM WITH THE TEXT "HELLO WORLD!"
var_dump($sparkClass->getRoomMessages(15)); //RETRIEVES ALL THE ROOM MESSAGES SPECIFIED (10 BY DEFAULT)
?>
并调用消息函数
$sparkClass->getRoomMessages($temp);
其中 $temp
是 roomid。
关于用于在 CURLOPT_URL 中传递变量的 php pb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39266642/
我有一个经过训练的模型 (Faster R-CNN),我使用 export_inference_graph.py 将其导出以用于推理。我试图了解创建的 frozen_inference_graph.p
我正在开发一个使用Google Protocol Buffer (protobuf)和CMake的库。该项目具有以下目录树。 MyProject/ MyProject/include/myprojec
我有一个旧的训练有素的 tf1.x 模型(让它成为 Model1 ),用占位符、tf.contrib 等构建。我可以通过从 tf.Session(在 tf1.x 中)中的 .ckpt 检查点恢复图形来
我想预先执行查询并将结果存储在@query中: BEGIN DECLARE @query VARCHAR(50); SET @table = 'top20-img-link'; SET @query
有了这个玩具数据:: df = pd.DataFrame(pd.np.random.randint(2, 9, size=(8, 3))) df.index = pd.date_range(start
我使用的是 Twisted 16.1.1 和 python 3.4。在 twisted 的 16.1.1 版文档中,there is a tutorial上面写着“from twisted.sprea
最近尝试将模型(tf1.x)转换为saved_model,关注官方migrate document .但是在我的用例中,我手中的大部分模型或 tensorflow 模型动物园通常是 pb 文件,根据
有谁知道tensorflow_inception_graph.pb的原始源代码。 真不想知道示例项目中的操作 tensorflow/example/android - 读我。 Tensorflow A
完整的错误说: cv2.error:OpenCV(4.1.0)C:\ projects \ opencv-python \ opencv \ modules \ dnn \ src \ caffe \
我已将模型保存在图表(.pb 文件)中。但现在这个模型不准确,我想开发它。我有其他数据的图片需要学习,但我不知道是否可能或如何做到这一点?结果必须是新数据pb图的修改。 最佳答案 这是个好问题。实际上
假设我有模型(tf.keras.Model): class ContextExtractor(tf.keras.Model): def __init__(self): supe
我正在尝试加载取自 https://github.com/tensorflow/models/tree/master/official/resnet 的已训练模型,但是当我尝试加载 .pb 时,我在
我计划将 .aab 上传到 Play 商店进行发布,在发布之前,我正在尝试反编译以查看在逆向工程过程中哪些数据可能会暴露给用户。 在 .aab_FILES/base/中,我看到了 assets.pb
libphonenumber 中没有phonenumber.pb.h 和phonemetadata.pb.h (CPP) 库 那么有什么办法可以找出来吗? 谢谢! 最佳答案 这些是由 Google p
我需要在 CSV 甲酸盐文件中搜索超过 PB 的数据。使用 LUCENE 建立索引后,索引文件的大小是原始文件的两倍。是否可以减少索引文件的大小??? HADOOP中如何分发LUCENE索引文
我公司的产品每年将在我们的客户站点产生数 PB 的数据。我想填满一个多 PB 的 NAS 来模拟一个已经运行了很长时间(3 个月、6 个月、一年等)的系统。我们希望在我们的软件在负载下的存储系统上运行
我在 Windows 10 机器上创建了一个 tensorflow 模型并使用以下方法保存它: model.save('myfolder') 文件夹内myfolder我得到: - saved_mode
我使用 Pytorch 创建了一个对象检测模型然后从 .pth 转换而来至 .onnx然后 .pb , 但现在我需要将其转换为 .tflite对于安卓应用程序!怎么做?这是我的第一次。 input_a
在这种情况下,大文件会发生什么? 1)Spark从NameNode获取数据位置。 Spark是否会在同一时间停止,因为根据NameNode的信息,数据大小太长? 2)Spark根据数据节点块大小对数据
我在对象检测 API 中使用 ssd_mobilenets 来训练我自己的模型,并获取 .ckpt 文件。它在我的电脑上运行良好,但现在我想在我的手机上使用该模型。所以,我需要将它转换为 .pb 文件
我是一名优秀的程序员,十分优秀!