diff --git a/core/agents/listenbrainz/client.go b/core/agents/listenbrainz/client.go index d4f588f65..a5aabc060 100644 --- a/core/agents/listenbrainz/client.go +++ b/core/agents/listenbrainz/client.go @@ -145,6 +145,7 @@ func (c *Client) makeRequest(method string, endpoint string, r *listenBrainzRequ return nil, err } req, _ := http.NewRequest(method, uri, bytes.NewBuffer(b)) + req.Header.Add("Content-Type", "application/json; charset=UTF-8") if r.ApiKey != "" { req.Header.Add("Authorization", fmt.Sprintf("Token %s", r.ApiKey)) diff --git a/core/agents/listenbrainz/client_test.go b/core/agents/listenbrainz/client_test.go index d32896e47..7bd248306 100644 --- a/core/agents/listenbrainz/client_test.go +++ b/core/agents/listenbrainz/client_test.go @@ -50,6 +50,7 @@ var _ = Describe("Client", func() { Expect(httpClient.SavedRequest.Method).To(Equal(http.MethodGet)) Expect(httpClient.SavedRequest.URL.String()).To(Equal("BASE_URL/validate-token")) Expect(httpClient.SavedRequest.Header.Get("Authorization")).To(Equal("Token LB-TOKEN")) + Expect(httpClient.SavedRequest.Header.Get("Content-Type")).To(Equal("application/json; charset=UTF-8")) }) It("parses and returns the response", func() { @@ -88,6 +89,7 @@ var _ = Describe("Client", func() { Expect(httpClient.SavedRequest.Method).To(Equal(http.MethodPost)) Expect(httpClient.SavedRequest.URL.String()).To(Equal("BASE_URL/submit-listens")) Expect(httpClient.SavedRequest.Header.Get("Authorization")).To(Equal("Token LB-TOKEN")) + Expect(httpClient.SavedRequest.Header.Get("Content-Type")).To(Equal("application/json; charset=UTF-8")) body, _ := io.ReadAll(httpClient.SavedRequest.Body) f, _ := os.ReadFile("tests/fixtures/listenbrainz.nowplaying.request.json") @@ -105,6 +107,7 @@ var _ = Describe("Client", func() { Expect(httpClient.SavedRequest.Method).To(Equal(http.MethodPost)) Expect(httpClient.SavedRequest.URL.String()).To(Equal("BASE_URL/submit-listens")) Expect(httpClient.SavedRequest.Header.Get("Authorization")).To(Equal("Token LB-TOKEN")) + Expect(httpClient.SavedRequest.Header.Get("Content-Type")).To(Equal("application/json; charset=UTF-8")) body, _ := io.ReadAll(httpClient.SavedRequest.Body) f, _ := os.ReadFile("tests/fixtures/listenbrainz.scrobble.request.json")