Authenticating with a Token
For this example, start the server using:
The code uses localhost:4222 so that you can start the server on your machine to try them out.
Go
nc, err := nats.Connect("127.0.0.1", nats.Name("API Token Example"), nats.Token("mytoken"))
if err != nil {
log.Fatal(err)
}
defer nc.Close()
// Do something with the connection
Java
Options options = new Options.Builder().
server("nats://localhost:4222").
token("mytoken"). // Set a token
build();
Connection nc = Nats.connect(options);
// Do something with the connection
nc.close();
JavaScript
let nc = NATS.connect({url: `nats://127.0.0.1:${port}`, token: "mytoken!"});
nc = NATS()
await nc.connect(servers=["nats://demo.nats.io:4222"], token="mytoken")
# Do something with the connection.
Ruby
TypeScript
C
natsConnection *conn = NULL;
natsStatus s = NATS_OK;
s = natsOptions_Create(&opts);
if (s == NATS_OK)
s = natsOptions_SetToken(opts, "mytoken");
if (s == NATS_OK)
s = natsConnection_Connect(&conn, opts);
(...)
// Destroy objects that were created
natsConnection_Destroy(conn);
natsOptions_Destroy(opts);
Connecting with a Token in the URL
Some client libraries will allow you to pass the token as part of the server URL using the form:
Go
// Token in URL
nc, err := nats.Connect("mytoken@localhost")
if err != nil {
log.Fatal(err)
}
defer nc.Close()
// Do something with the connection
Java
Connection nc = Nats.connect("nats://mytoken@localhost:4222");//Token in URL
nc.close();
JavaScript
Python
nc = NATS()
await nc.connect(servers=["nats://mytoken@demo.nats.io:4222"])
# Do something with the connection.
Ruby
NATS.start("mytoken@127.0.0.1:4222") do |nc|
puts "Connected using token!"
end
let url = `nats://:mytoken@127.0.0.1:${port}`;
let nc = await connect({url: url});
C
natsConnection *conn = NULL;
natsOptions *opts = NULL;
natsStatus s = NATS_OK;
s = natsOptions_Create(&opts);
if (s == NATS_OK)
s = natsOptions_SetURL(opts, "nats://mytoken@127.0.0.1:4222");
if (s == NATS_OK)
s = natsConnection_Connect(&conn, opts);
(...)
// Destroy objects that were created
natsOptions_Destroy(opts);