问题标签 [getstream-io]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
588 浏览

javascript - 如何从 API 获取未见/未读通知计数?

我正在使用 PHP。我希望在不使用 JavaScript 实时通知库的情况下从 PHP 中获取未读/未见计数。我该怎么做?

我在 JavaScript 库中看到您返回以下信息:

0 投票
1 回答
106 浏览

getstream-io - 限制 JS 获取流库返回的数据

在我们的架构中,出于安全和其他原因,我们确保在所有 id 到达用户之前对其进行编码。

当我们开始使用流时,我们将未编码的 id 推送到流中,因为我们从未想过它们会公开。

但是,在使用 get stream JS 库获取实时通知时,发送回的数据包括从我们的后端发送到流的大部分内容。

所以现在我们开始对我们推送到流的 id 进行编码,但后来我们才意识到我们将失去 getActivities 过滤选项,例如 id_lte。

有没有办法控制哪个字段被发送回前端,而不是主要是后端数据的转储。

对我们来说,js 实时库真正需要的只是实时计数,仅此而已。我们在按钮上显示实时计数,当用户按下按钮时,我们通过后端获取数据。

无论如何,我们都必须通过我们的后端,因为我们需要丰富的过程并且句子生成也在后端。我们不能利用原始流数据,所以它也是一种带宽浪费。

0 投票
1 回答
209 浏览

getstream-io - 取消订阅/断开实时更新JS库

我们正在处理一个 SPA(单页应用程序),所以当用户登录时 UI 刷新而不刷新页面。我们还通过库启动流套接字连接,如下所示。现在,当用户注销时,我们要销毁它。我们尝试了 user1.unsubscribe()client.disconnect()但似乎不起作用,尽管方法看起来在源代码中定义。

在页面从不刷新的环境中处理此问题的正确方法是什么?

0 投票
1 回答
724 浏览

getstream-io - 我们如何使用 getstream 实现类似主题标签的功能

我想使用 Getstream.io API 在 Twitter 上创建类似于主题标签的功能。用户将使用某些主题标签将消息发布到他们自己的平面提要中。然后我希望能够根据某个主题标签过滤所有活动。

0 投票
2 回答
114 浏览

getstream-io - 当通知提要取消关注固定提要时,是否会删除活动?

标题几乎说明了一切,但我会在正文中更详细地重复。

当通知提要notification:user1跟随平面提要posts:user2时,活动将从 复制posts:user2notification:user1。要复制的活动的精确数量可以通过传递一个activityCopyLimit整数来选择指定。

但是,当一个提要取消关注另一个提要时,没有类似的选项可以控制此行为。该文档简单地指出:

来自目标提要的提要中的现有活动将被清除(异步)

所以我的问题是:通知提要也是这种情况吗?

无论是否,清除活动的选项都将非常有用。仅仅因为用户不再需要从给定的提要接收活动并不一定意味着已接收内容的历史应该消失。

非常感谢。

0 投票
1 回答
118 浏览

getstream-io - 我们可以有基于条件的过滤器吗

我们是否可以有基于条件的过滤器,例如假设我们为一个提要添加了“team:"ÜK"","game:"Cricket",而我们为另一个提要添加了"team:"ÜK"","game:"Football"。

那么我们能否获得所有的 feed,其中 team = uk 和 game = football

0 投票
1 回答
419 浏览

getstream-io - 用于移动应用的 Getstream

我为这个问题道歉,但我没有资源自己解决这个问题。我正在寻找我的下一个 iOS / android 应用程序应该具有的功能,正如您可以想象的那样,我对“一小撮社交”感兴趣,这就是为什么 getsream 似乎是我的救星。在阅读了入门部分和文档后,我发现这个警告http://getstream.io/docs/#mobile让我感到困惑。我认为 getstream 是一项托管服务,它负责处理让我使用 REST API 在他们的手机中构建我的移动社区的所有事情。你能告诉我我哪里错了吗?非常感谢

0 投票
1 回答
704 浏览

javascript - 从 promise 返回的对象是未定义的

我正在尝试将 getstream API 包装在角度服务(工厂)中

这是我的代码:

首先,我使用端点 /api/feed/auth/ 从我的服务器获取 user_id 和 auth 令牌。该数据以角度承诺的形式返回。

接下来,我使用这些数据调用 getstream api 来获取user_feed对象。如果我返回这个对象 ( user_feed),它在控制器中是未定义的。如果我将它打印到服务中的控制台,它具有正确的值。我注意到打印发生在返回后半秒左右。为什么这个变量的赋值是异步发生的?

现在,如果我在 console.log 语句中调用getuser_feed对象的方法,则会打印出一个 Javascript 承诺对象。如果我return user_feed.get()返回undefined控制器。如果我像上面的代码一样在服务中调用它,并在 promise then 语句中返回数据对象,它会返回undefined到控制器。但是,如果我打印该data对象,它具有正确的值。

为什么我不能从该服务返回任何对象?我错过了使用承诺的一些基本方面吗?

0 投票
0 回答
150 浏览

getstream-io - 使用 http://getstream.io/ 分享提要帖子

通过使用http://getstream.io/,我可以加载用户的所有提要和提要,也能够喜欢或评论提要帖子。现在想实现动态分享。我该怎么做?

以下是我心中的观点

  • 再次为想要分享的用户插入现有提要

http://getstream.io/是否提供了其他方式来分享帖子?

0 投票
1 回答
499 浏览

php - PHP addActivity 上的 GetStream.io 连接超时

当我在 GetStream.io 中对我的提要进行某些更新时,我不断收到cURL 错误 28:在 35xx 毫秒后解析超时(xx = 不同的毫秒值)。看来这一定来自 GetStream 方面的错误,该错误可能无法正确报告。有谁知道 GetStream addActivity 调用是否超过 3.5 秒?

由于这是间歇性的,我唯一能想到的是可能存在有关foreign_id的 GetStream 错误,因为它可能正在复制现有的 foreign_id。但是,关于 GetStream 使用 foreign_id 的信息有限。

这是我的 GetStream 调用的简化代码:



更新:2016 年 4 月 8 日 - 有关错误的更多信息
以下是有关我们收到的错误的更多信息:

CurlFactory.php 第 186 行中的 ConnectException:cURL 错误 28:在 3512 毫秒后解析超时(请参阅http://curl.haxx.se /libcurl/c/libcurl-errors.html )

在 CurlFactory.php 第 186 行

CurlFactory::createRejection(object(EasyHandle), array('errno' => '28', 'error' => 'Resolving timed out after 3512毫秒', 'url' => ' https://api.getstream.io/api/v1.0/feed/User/145636936490547870efa96b68a892ca/?api_key=null, 'http_code' => '0', 'header_size' => '0', 'request_size' => '0', 'filetime' => '-1', 'ssl_verify_result' => '0', 'redirect_count ' => '0', 'total_time' => '3.512752', 'namelookup_time' => '0', 'connect_time' => '0', 'pretransfer_time' => '0', 'size_upload' => '0 ', 'size_download' => '0', 'speed_download' => '0', 'speed_upload' => '0', 'download_content_length' => '-1', 'upload_content_length' => '-1', ' starttransfer_time' => '0', 'redirect_time' => '0', 'redirect_url' => '', ' primary_ip' => '', 'certinfo' => array(), 'primary_port' => '0', 'local_ip' => '', 'local_port' => '0')) 在 CurlFactory.php 第 150

行CurlFactory::finishError(object(CurlHandler), object(EasyHandle), object(CurlFactory)) 在 CurlFactory.php 第 103 行

在 CurlHandler.php 第 43 行的 CurlFactory::finish(object(CurlHandler), object(EasyHandle), object(CurlFactory))

在 CurlHandler->__invoke(object(Request), array('synchronous' => true, 'base_uri' => object(Uri), 'timeout' => '3', 'handler' => object(HandlerStack), ' allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects' => false), 'http_errors' => true, 'decode_content' => true, 'verify' => true, 'cookies' => false)) 在 Proxy.php 第 28 行的 Proxy::GuzzleHttp\Handler{closure}(object (请求), array('同步' => true, 'base_uri' => object(Uri), 'timeout' => '3', 'handler' => object(HandlerStack), 'allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects' => false), 'http_errors' = > true, 'decode_content' => true, 'verify' => true, 'cookies' => false)) 在 Proxy.php 第 51 行

在 Proxy::GuzzleHttp\Handler{closure}(object(Request), array('synchronous' => true, 'base_uri' => object(Uri), 'timeout' => '3', 'handler' => object (HandlerStack), 'allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects' => false), 'http_errors' => true, 'decode_content' => true, 'verify' => true, 'cookies' => false)) 在 PrepareBodyMiddleware.php 第 72 行

在 PrepareBodyMiddleware->__invoke(object(Request), array('synchronous' => true, 'base_uri' => object(Uri), 'timeout' => '3', 'handler' => object(HandlerStack), ' allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects' => false), 'http_errors' => true, 'decode_content' => true, 'verify' => true, 'cookies' => false)) 在 Middleware.php 第 30 行

在 Middleware::GuzzleHttp{closure}(object(Request), array('synchronous' => true, 'base_uri' => object(Uri), 'timeout' => '3', 'handler' => object(HandlerStack ), 'allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects ' => false), 'http_errors' => true, 'decode_content' => true, 'verify' => true, 'cookies' => false)) 在 RedirectMiddleware.php 第 68 行

在 RedirectMiddleware->__invoke(object(Request), array('synchronous' => true, 'base_uri' => object(Uri), 'timeout' => '3', 'handler' => object(HandlerStack), ' allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects' => false), 'http_errors' => true, 'decode_content' => true, 'verify' => true, 'cookies' => false)) 在 Middleware.php 第 59 行

在 Middleware::GuzzleHttp{closure}(object(Request), array('synchronous' => true, 'base_uri' => object(Uri), 'timeout' => '3', 'handler' => object(HandlerStack ), 'allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects ' => false), 'http_errors' => true, 'decode_content' => true, 'verify' => true, 'cookies' => false)) 在 HandlerStack.php 第 67 行

在 HandlerStack->__invoke(object(Request), array('synchronous' => true, 'base_uri' => object(Uri), 'timeout' => '3', 'handler' => object(HandlerStack), ' allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects' => false), 'http_errors' => true, 'decode_content' => true, 'verify' => true, 'cookies' => false)) 在 Client.php 第 268 行

在客户端->传输(对象(请求),数组('同步'=> true,'base_uri'=>对象(Uri),'超时'=>'3','处理程序'=>对象(HandlerStack),' allow_redirects' => array('max' => '5', 'protocols' => array('http', 'https'), 'strict' => false, 'referer' => false, 'track_redirects' => false), 'http_errors' => true, 'decode_content' => true, 'verify' => true, 'cookies' => false, '_conditional' => array('User-Agent' => 'GuzzleHttp/6.1. 1 curl/7.35.0 PHP/5.5.9-1ubuntu4.13'))) 在 Client.php 第 98 行

Client->sendAsync(object(Request), array('synchronous' => true)) 在客户端。 php 第 104 行

Client->send(object(Request)) 在 Feed.php 第 99 行

在 Feed->makeHttpRequest('feed/User/145636936490547870efa96b68a892ca/', 'POST', array('actor' => 'User:145636936490547870efa96b68a892ca', 'verb' => 'update', 'object' => 'Image:146562976666666 ', 'target' => 'UserCharacter:14578366478445749c90d674fcbfcf7a', 'foreign_id' => 'Image:1460097866182455b2966b0d6af6c6ca1460097866', 'to' => array('UserCharacter:14578366478445749c90d674fcbfcf7a xIhp_AjtHawdcoxhOyVkM40-dnk', 'Character:14542764069160f34f6bba72eba8369a 0Z-xTykbo-wxNgPy0NAZts- mDgU', 'Universe:14578366478314e869bd6fdbe67cfb1a FZbzNGVTQhCwa0s7QNu2NbNGZpk', '流派:14504636484684adffda0df53e17a83a 07_msjt2sUDptVBstw4gq5ZtPfw')), null,) 在 BaseFeed.php 第 152 行

在baseFeed->添加性(阵列('actor'=>'用户:1456369364905478787070EFA96B68A892CA','verb'=>'update'=>'object'=>'图像:1460097866182455B2966B06B06C6AF'','object'=>'object'=>' 'foreign_id' => 'Image:1460097866182455b2966b0d6af6c6ca1460097866', 'to' => array('UserCharacter:14578366478445749c90d674fcbfcf7a', 'Character:14542764069160f34f6bba72eba8369a', 'Universe:14578366478314e869bd6fdbe67cfb1a', 'Genre:14504636484684adffda0df53e17a83a'))) in ImageSMLHandler.php line 146

在 ImagesApiController.php 第 55 行中的 ImageHandler->processImages()