Sending Structured Data

    Take a simple stock ticker that sends the symbol and price of each stock:

    {% tabs %} {% tab title=”Go” %}

    {% endtab %}

    1. public String symbol;
    2. public float price;
    3. }
    4. public class PublishJSON {
    5. public static void main(String[] args) {
    6. try {
    7. Connection nc = Nats.connect("nats://demo.nats.io:4222");
    8. // Create the data object
    9. stk.price=1200;
    10. // use Gson to encode the object to JSON
    11. GsonBuilder builder = new GsonBuilder();
    12. Gson gson = builder.create();
    13. String json = gson.toJson(stk);
    14. // Publish the message
    15. nc.publish("updates", json.getBytes(StandardCharsets.UTF_8));
    16. nc.close();
    17. } catch (Exception e) {
    18. e.printStackTrace();
    19. }
    20. }
    21. }

    {% endtab %}

    {% tab title=”JavaScript” %}

    {% endtab %}

    1. nc = NATS()
    2. await nc.connect(servers=["nats://demo.nats.io:4222"])

    {% endtab %}

    {% tab title=”Ruby” %}

    {% endtab %}

    {% endtab %} {% endtabs %}