2016-09-08 2 views
1

Ich versuche den Slack-Sample-Bot aus diesem Blogpost https://www.opsdash.com/blog/slack-bot-in-golang.html zu verwenden. Ich habe mein API-Token erfolgreich erstellt, aber ich kann keine Verbindung zum Websocket-Server herstellen (die Anforderung rtm.start wird normal ausgeführt). Ich habe die FehlermeldungWarum wird diese Websocket-Verbindung abgelehnt?

dial tcp 54.242.95.213:443: connectex: No connection could be made because the target machine actively refused it 

ich auch Einfachen Web-Socket Client und über eine einen Tester-basierte Website namens über einen Chrome-App zu verbinden versucht habe, bekommen. Beide funktionieren gut, ich kann eine Verbindung herstellen und ich kann Daten senden.

Ich bin hinter einem Proxy, aber ich habe nur Probleme mit golang's websocket.Dial Funktion.

Weiß jemand, warum das passieren kann?

Ich benutze:
- Windows 7 SP1 x64
- Golang 1.7.1 Fenster/amd64

Grüße Tonka

+0

Kannst du mit http mit http verbinden? Die URL in diesem Beispiel verwendet http – Sridhar

+0

Es stellt sich heraus [kann] (http://stackoverflow.com/questions/9745249/html5-websocket-with-ssl). Liest du die Antwort vom http Anruf? Sieht aus wie [das] (https://api.slack.com/methods/rtm.start) bietet Ihnen die wss-URL zum Herstellen der Verbindung zu – Sridhar

+0

Wo ist der http-Aufruf? – tonka

Antwort

0

Wenn Sie gorilla/websocket verwenden, es hat die Fähigkeit, einen Proxy zu verwenden. Von issue 107:

import "net/http" 

... 

var dialer = websocket.Dialer{ 
    Proxy: http.ProxyFromEnvironment, 
} 

Wenn Sie golang.org/x/net verwenden Sie Gorilla/websocket wechseln sollte.

+0

Thx, ich werde Gorilla's Websocket Lib versuchen – tonka

Verwandte Themen