Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 应用引擎开发服务器-套接字的协议类型错误_Sockets_Google App Engine_Go_Network Programming_Cherrypy - Fatal编程技术网

Sockets 应用引擎开发服务器-套接字的协议类型错误

Sockets 应用引擎开发服务器-套接字的协议类型错误,sockets,google-app-engine,go,network-programming,cherrypy,Sockets,Google App Engine,Go,Network Programming,Cherrypy,我正在运行一个用Go编写的应用程序引擎应用程序,该应用程序在本地与开发服务器一起运行,并使用大约100k-1MB JSON数据以1/s的速度请求API 服务器不时打印错误跟踪,但仍继续为请求提供服务: socket.error 41 Traceback (most recent call last): File "/Users/foo/go_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 1302, in co

我正在运行一个用Go编写的应用程序引擎应用程序,该应用程序在本地与开发服务器一起运行,并使用大约100k-1MB JSON数据以1/s的速度请求API

服务器不时打印错误跟踪,但仍继续为请求提供服务:

socket.error 41
Traceback (most recent call last):
  File "/Users/foo/go_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 1302, in communicate
    req.respond()
  File "/Users/foo/go_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 831, in respond
    self.server.gateway(self).respond()
  File "/Users/foo/go_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 2127, in respond
    self.write(chunk)
  File "/Users/foo/go_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 2188, in write
    self.req.write(chunk)
  File "/Users/foo/go_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 879, in write
    self.conn.wfile.sendall(chunk)
  File "/Users/foo/go_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 970, in sendall
    bytes_sent = self.send(data)
  File "/Users/foo/go_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 977, in send
    bytes_sent = self._sock.send(data)
error: [Errno 41] Protocol wrong type for socket
客户端处于循环中,正在执行以下操作:

func call(url string, data []byte) error {
    r, err := http.Post(url, "application/json", bytes.NewReader(data))
    if err != nil {
        return err
    }
    defer r.Body.Close()
    if r.StatusCode != http.StatusCreated {
        return fmt.Errorf("unexpected status code %d", r.StatusCode)
    }
    return nil
}
Golang应用程序引擎SDK现在是1.9.26,我以前也有过1.9.25,但有同样的问题

我在网上没有找到任何能帮助我理解这个问题的东西


有人知道这可能是由什么引起的吗

这似乎是由于
wsgiserver2.py
使用python套接字而产生的错误,因为许多其他对“错误41”和“套接字的协议错误类型”的引用在网上显示为python
sockets
-模块相关

我认为,考虑到这个问题的间歇性,它可能是平台上的一个问题。在这种情况下,您应该包含足够的代码来重现问题,或者可以重现问题的附加应用程序

祝你在提交问题报告时好运