ich RabbitMQ unter Code anschließePassing URI RabbitMQ
factory.UserName = "userid";
factory.Password = "[email protected]";
factory.VirtualHost = "/filestream";
factory.Port = AmqpTcpEndpoint.UseDefaultPort;
factory.HostName = "myrabbitserver";
return factory.CreateConnection();
I Verbindungseinstellungen auf das unten Format ändern wollte:
amqp://userid:[email protected]@myrabbitserver:5672/filestream
Mein Passwort aufgrund @
Charakter hat, auf die ich m nicht in der Lage, URI
var factory = new ConnectionFactory();
factory.Uri = "amqp://userid:[email protected]@myrabbitserver:5672/filestream";
Ich am Ende jedes Attribut der Fabrik manuell liefern. Gibt es einen Weg, RabbitMQ zu sagen, dass mein Passwort @ hat, indem ich etwas wie unten tue?
factory.Uri = "amqp://userid:"[email protected]"@myrabbitserver:5672/filestream";
Wenn ich versuche, @
das Kennwort %40
zu ändern, wirft es einen Fehler, wenn die Verbindung
None of the specified endpoints were reachable
Erwerb
Vielleicht% 40 für das @ -Zeichen verwenden? 'factory.Uri =" amqp: // Benutzer-ID: mypass% 4025% 40myrabbitserver: 5672/filestream ";'? Alternativ rufen Sie eine UrlEncode-Methode für die Zeichenfolge auf und weisen sie 'factory.Uri' zu, z. B.' factory.Uri = HttpUtlility.UrlEncod (); '. Der zweite Ansatz hätte den Vorteil, allen Sonderzeichen im Uri zu entkommen. –
Tim
Ich habe das auch versucht, aber es erlaubt nicht, den Wert auf Uri zu setzen, wenn ich ein Sonderzeichen oder eine Codierung hinzufüge; – techspider
Wie wäre es mit% 40 für das '@' innerhalb des Passwortes, aber nicht für '@' das ist Teil der amqp uri spec? – cantSleepNow