草庐IT

message_received

全部标签

java - 使用 Eneter Messaging 和 Protocol Buffers 在 3g 网络上的端口 80 上启动 tcp 服务器的权限被拒绝

我正在开发一个项目,我的android应用程序应该充当其他android客户端的服务器。我正在使用Enetermessagingframework它使用套接字和谷歌Protobuf..在wifi上一切都像一个魅力但是一旦我切换到3g网络(尝试使用手机的3g公共(public)ip地址和端口80/81启动服务器)我收到以下错误:EACCES(权限被拒绝)E/EneterMessaging:~24216eneter.messaging.messagingsystems.tcpmessagingsystem.internal.TcpListenerProvider.startListenin

C++ : how to close a tcp socket (server) when receiving SIGKILL

如何在死前关闭套接字?我在linux上有一个创建TCP服务器的服务。有时我必须重新启动它并且我希望套接字真正关闭。此刻它挂了。我也知道SIGKILL无法处理。谁能指出我正确的方向? 最佳答案 套接字将被关闭-操作系统将自动执行此操作,请参阅:UsingSO_REUSEADDR-Whathappenstopreviouslyopensocket?与其尝试处理SIGKILL,这不会起作用,不如从一开始就解决问题:使用SO_REUSEADDR套接字选项,它允许您立即重用端口。 关于C++:ho

安卓 : Receive data in UDP/TCP

在我的Android应用程序中,我必须从Wifi连接(UDP和TCP)获取数据。这是我的UDP代码:try{//CreatenewUDP-Socketsocket=newDatagramSocket(SERVERPORT);while(isRunning){byte[]buf=newbyte[50];DatagramPacketpacket=newDatagramPacket(buf,buf.length);socket.receive(packet);Stringstr=newString(buf,0,packet.getLength());packet.setLength(buf.

java - 骡子 ESB 3.4.0 CE : Redeliver message through TCP Endpoint upon Socket Exception

我有一个需要持久TCP连接的应用程序。所以我在Tcp连接器上设置了一些适当的属性来支持它。我遇到的问题是,如果外部应用程序关闭并重新启动,Mule将继续尝试将消息发送到套接字,而不是尝试重新建立连接。这是我的错误日志:ERROR2014-04-3017:11:35,436[[chatroomexample].connector.VM.mule.default.receiver.04]org.mule.exception.DefaultMessagingExceptionStrategy:**************************************************

c# - 使用 TCP : "The message could not be dispatched..." 时收到错误

我不熟悉创建WCF服务。我在VS2008中创建了一个运行在IIS7上的WCFWeb服务。当我使用http时,该服务运行良好。当我为TCP配置服务并运行时,我收到以下错误消息。Therewasacommunicationproblem.Themessagecouldnotbedispatchedbecausetheserviceattheendpointaddress'net:tcp://elec:9090/CoordinateIdTool_Tcp/IdToolService.svcisunavailablefortheprotocoloftheaddress.我搜索了很多论坛,包括这个

c# - Socket.Receive() 仅在逐步调试代码时才按预期工作

我是套接字编程的新手。我有一个用C#编写的小应用程序,它使用COM端口连接到“键映射器”设备,该设备仅在应用程序发送匹配命令时才响应。例如:如果我需要从映射器获取一些引脚号,我发送了一个十六进制命令。然后我收到正确的回复。现在,我正在尝试使用具有设备唯一IP地址的套接字连接来执行相同的事件,如下所示。privatevoidbutton1_Click(objectsender,EventArgse){byte[]sendCommand=newbyte[]{0x02,0x24,0x31,0x95,0x0A,0x0D,0x03};byte[]ReceivedVal=newbyte[1024]

c++ - 从 recv() 读取多个 "message"

完全有可能使用recv()调用将多个单独的“消息”(例如2个send())读入缓冲区。在这种情况下,一旦您意识到缓冲区中的数据多于所需,您将如何将第二条消息放回recv()缓冲区?例如,所有消息都以一个指定其长度的字节为前缀。我需要继续接收,直到将正确数量的字节读入缓冲区,但不能继续接收。一个想法是执行一次recv()来确定消息长度,然后创建一个具有该大小的缓冲区。我不知道不适合缓冲区的数据会发生什么情况。 最佳答案 如果您想要接收固定尺寸,您可以这样做:ssize_trecv_all(intsocket,char*buffer_p

python - 套接字编程 Python : How to make sure entire message is received?

我正在使用python3.x和套接字模块。服务器在ipv4地址上运行并使用tcp。我阅读了一些关于如何发送和接收数据的教程。为了让服务器或客户端确保发送了整条消息,您可以简单地检查发送的数据量是否等于消息的大小:defmysend(self,msg):totalsent=0whiletotalsent来源:https://docs.python.org/3/howto/sockets.html#socket-howto并为客户确保已收到整个响应thistutorial建议在响应的开头添加响应的大小。我的问题:如何确保我收到消息的第一部分指示消息的大小(假设我的消息包含1000个字符,我

C套接字编程: select() is returning 0 despite messages sent from server

我正在使用select()从服务器接收recv()消息,使用TCP/IP。当我send()来自服务器的消息时,它返回合理数量的字节,表示发送成功。当我使用while循环到recv()时,它确实成功到达了客户端。一切都很好,花花公子。while(1)recv()//obviouslypseudocode但是,当我尝试使用select()时,select()从超时(设置为1秒)返回0并且在我的一生中无法弄清楚为什么它看不到从服务器发送的消息。我还应该提到,当服务器断开连接时,select()也看不到,就像我要使用recv()一样,它会返回0到表示使用套接字的连接已经关闭。非常感谢任何意见或

Typora配置github图床踩坑记录:“success“:false,“message“:“upload error

今天在给typora配置图床的时候遇到了一丢丢问题我是根据这位大佬的配置步骤使用Github+picGo搭建图床,保姆级教程来了一步步来的,在处理typora验证图片上传选项时遇到问题:{“success”:false,“message”:“uploaderror.seeC:\Users\ASUS\AppData\Roaming\picgo\picgo.logformoredetail.”}应该是说出现了**“message”:"uploaderror**这个问题,然后要去picgo的日志(log)里面去看一下错误原因,不过我并没有去看我略加搜索,发现了一些和我一样的错误但解决方案都不适合,最