问题标签 [socketrocket]

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 回答
4096 浏览

websocket - 为什么客户端 websocket 关闭代码与服务器代码不匹配?

我有一个 Spring Boot Tomcat 服务器,它正在处理来自正在使用的客户端的 websocket 连接:

  1. 套接字火箭
  2. 泰鲁斯

我发现服务器提供的关闭代码往往不是客户端读取的关闭代码。

对于SocketRocket,我在服务端关闭websocket,代码1000,客户端经常读取1001。

对于 Tyrus,我使用代码 1011 关闭 websocket,客户端读取 1006 或 1011。

来自RFC 6455的关闭代码的描述:

1000表示正常关闭,表示建立连接的目的已经实现。

1001 表示端点正在“离开”,例如服务器关闭或浏览器已离开页面。

1006 是保留值,绝不能在端点关闭控制帧中设置为状态码。它被指定用于期望状态代码指示连接已异常关闭的应用程序,例如,没有发送或接收关闭控制帧。

1011 表示服务器正在终止连接,因为它遇到了阻止它完成请求的意外情况。

我已经在服务器上使用 Wireshark 验证了传出的关闭代码。

作为将信息从服务器传递到客户端的一种方式,关闭代码是否不可靠?在关闭 websocket 之前,我是否需要在应用层实现一些传递这些信息的东西?

0 投票
0 回答
285 浏览

ios - 为什么我的 websocket 服务器总是报 [websocket: control frame length > 125]?

我的 iOS 应用程序用于SocketRocket与我的 websocket 服务器建立连接。但是在建立连接并发送第一条消息后,服务器(使用gorilla/websocket)尝试解析帧,但失败了:

调用NextReader()时报错:

奇怪的是,我使用SocketRocket'ssend()方法发送数据,所以不应该有任何控制帧(ping/pong)。

有没有人见过这个问题?帮助!

0 投票
1 回答
140 浏览

python - SocketRocket (iOS):如何识别谁在与另一个用户聊天?

我想在所有用户之间创建多个套接字。那么我如何传递密钥和 ID,例如服务器分为单独的窗口。

谢谢你。

0 投票
1 回答
52 浏览

ios - 固定自定义 CA 证书是否足以验证链中的最后一个证书?

我正在尝试在 SocketRocket 上使用自定义 CA。固定根证书是否足以MySuperServer在下面的构造中进行验证?

还是我必须固定IntermadiateA1证书?

0 投票
2 回答
2084 浏览

ios - 在iOS中保持应用程序空闲一段时间后,SRWebsocket连接会自动关闭

我正在使用 SRWebSocket 在 iOS 中打开 websocket 连接。但是,如果我有时让应用程序处于空闲状态,则连接会自动关闭。之后,当我尝试发送任何数据时,websocket 连接失败。

在我手动断开连接之前,有没有办法让 websocket 连接保持活动状态?

0 投票
1 回答
489 浏览

ios - SocketRocket 和 AFNetworking cookie 同步

我们正在使用SocketRocket实现聊天功能。但是问题是在初始化的时候SocketRocket,它被服务器端的登录过滤器过滤了,所以它不能做http 3次握手成功。当我们删除服务器端登录过滤器时,SocketRocket可以成功与服务器端对话,但服务器端无法知道用户是谁。

所以我在想这是否是SocketRocket不同步cookie的原因AFNetworking,因为我们的登录正在使用AFNetworking库。那么是否有人知道如何在它们之间同步 cookie,或者如果您认为这是其他原因,请告诉我。提前致谢。

这是我们用来连接服务器的方法SocketRocket

0 投票
2 回答
2405 浏览

objective-c - iOS 9 SDK Objective-C 的 WebSockets 客户端

任何人都可以建议在 iOS 中实现 Web 套接字的最佳方法。我需要使用基本 sdks iOS 9 或更高版本进行构建。找到了她的 iOS 网络套接字客户端。(https://github.com/square/SocketRocket)。也在这里阅读一个线程http://www.elabs.se/blog/66-using-websockets-in-native-ios-and-android-apps。我可以将它用于具有基本 sdks iOS 9 及更高版本的项目吗?它是在 iOS 中实现 Web 套接字的最佳解决方案吗?同样在所需的库中,可以看到 libicucore.dylib,是否可以在 Xcode 7 及更高版本中包含该库?

0 投票
1 回答
1288 浏览

objective-c - 架构 armv7 的未定义符号:“_OBJC_CLASS_$_SRWebSocket”

我正在使用 SocketRocket 作为 WebSocket 库,我通过 MAC 中的 cocoabot 包管理器安装了该库,用于 iOS 6 平台。

在 appDeligate.m 中时,我将头文件

在我正在使用的函数中:

在一个独立的项目中,这工作得很好,但是当我将它包含在我的项目中时,我收到以下错误:

ld /Users/devuser/Library/Developer/Xcode/DerivedData/myProject-fxqgbeafqfsypwclwioqqupwexue/Build/Products/Debug-iphoneos/myProject.app/myProject normal armv7 cd /Users/devuser/Documents/cordovadev/myProject export IPHONEOS_DEPLOYMENT_TARGET=6.0 export PATH ="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/ bin:/bin:/usr/sbin:/sbin" /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer /Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.2。sdk -L/Users/devuser/Library/Developer/Xcode/DerivedData/myProject-fxqgbeafqfsypwclwioqqupwexue/Build/Products/Debug-iphoneos -F/Users/devuser/Library/Developer/Xcode/DerivedData/myProject-fxqgbeafqfsypwclwioqqupwexue/Build/Products/ Debug-iphoneos -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -F/Users/devuser/Library/Developer/GStreamer/iPhone.sdk -filelist /Users/devuser/Library/Developer/Xcode/DerivedData/ myProject-fxqgbeafqfsypwclwioqqupwexue/Build/Intermediates/myProject.build/Debug-iphoneos/myProject.build/Objects-normal/armv7/myProject.LinkFileList -miphoneos-version-min=6。0 -dead_strip -lresolv -lstdc++ -framework CoreAudio -framework AudioToolbox -framework VideoToolbox -framework OpenGLES -framework AssetsLibrary -framework QuartzCore -weak_framework CoreFoundation -weak_framework UIKit -weak_framework AVFoundation -weak_framework CoreMedia -weak_framework CoreMotion -weak-lSystem -force_load /Users/devuser /Library/Developer/Xcode/DerivedData/myProject-fxqgbeafqfsypwclwioqqupwexue/Build/Products/Debug-iphoneos/libCordova.a -ObjC -fobjc-link-runtime -framework GStreamer -lresolv -weak_framework CoreMedia -framework CoreVideo -framework OpenGLES /Users/devuser /库/开发人员/Xcode/DerivedData/myProject-fxqgbeafqfsypwclwioqqupwexue/Build/Products/Debug-iphoneos/libCordova。a -liconv -framework CoreMotion -framework CoreLocation -framework ImageIO -framework OpenAL -framework AssetsLibrary -framework Foundation -weak_framework UIKit -framework CoreGraphics -framework AddressBook -framework AddressBookUI -framework AudioToolbox -weak_framework AVFoundation -framework CFNetwork -framework MediaPlayer -framework QuartzCore -framework SystemConfiguration -framework MobileCoreServices -lPods-myProject -Xlinker -dependency_info -Xlinker /Users/devuser/Library/Developer/Xcode/DerivedData/myProject-fxqgbeafqfsypwclwioqqupwexue/Build/Intermediates/myProject.build/Debug-iphoneos/myProject.build/Objects-normal /armv7/myProject_dependency_info.dat -o /Users/devuser/Library/Developer/Xcode/DerivedData/myProject-fxqgbeafqfsypwclwioqqupwexue/Build/Products/Debug-iphoneos/myProject.app/myProject应用程序/我的项目应用程序/我的项目应用程序/我的项目应用程序/我的项目应用程序/我的项目应用程序/我的项目应用程序/我的项目应用程序/我的项目

架构 armv7 的未定义符号:
“_OBJC_CLASS_$_SRWebSocket”,引用自:AppDelegate.o 中的 objc-class-ref

ld:未找到架构 armv7 的符号

clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

我已经检查过了,但我找不到任何相关的东西。有什么帮助吗?

0 投票
1 回答
100 浏览

objective-c - 无法将调用 Swift 2 的代码编译到 Objective C 库(pod)中

我正在尝试使用 Swift 2 中的 SocketRocket(一个 Objective-C pod)。我创建了一个桥接头。

这是我正在尝试的:

编译器错误信息是:

在我看来,我正在做错误消息所说的我应该做的事情。我究竟做错了什么?

0 投票
0 回答
112 浏览

objective-c - 方法未从 Objective-c 转换为 swift

我需要在我的 swift 项目中实现 wamp v1 协议。我搜索了图书馆 MDWamp ( v 1.1.0 )。同样使用 MDWamp 我需要 SocketRocket ( v 0.3.1-beta2 )。全部通过 cocoapods 安装,如下所示:

然后,在我的项目中的某个地方,我需要call从 MDWamp 调用 100% 存在于 MDWamp.h 文件中的函数。

但是当我尝试输入:

没有发生自动完成。有点奇怪。我决定去MDWamp上课(cmd +单击MDWamp课程)并搜索该call功能......我没有找到它!

任何想法为什么该call函数没有转换为swift?