Search code examples
node.jsazureazureservicebusazure-queues

How to specify content type as application/json while sending message to azure service bus queue in node js?


I am sending message to queue using @azure/service-bus package and sendMessages function as mentioned in here. When I am sending a javascript array [{ name: "Albert Einstein", "company": "xyz" }] it is giving an error TypeError: Provided value for 'message' must be of type ServiceBusMessage. So after research found out it adds body key e.g. [body:{name: "Albert Einstein", "company": "xyz"}]. But this inserts record with content-type as application/xml. Is there any way I can specify content-type:application/json?


Solution

  • You can specify contentType like below:

    const messages = [
        {
            body: { "name": "Albert Einstein", "company": "xyz"},
            contentType: "application/json"
        }
    ]
    

    Please refer to ServiceBusMessage:

    enter image description here