У меня была эта проблема. Несмотря на то, что моя проблема не была связана с CORS, я решил документировать эту проблему здесь на тот случай, если у будущих читателей возникнет та же проблема.
Моя проблема заключалась в том, что я неправильно вводил учетные данные пользователя. Из браузера вы можете просто вызвать любую из конечных точек API RabbitMQ следующим образом:
http://somename:somepassword@servername: 15672 / api / cluster-name
Но когда вы вызываете его программно, вам нужно удалить учетные данные из URL-адреса и использовать вместо них 64 базы.
using (var httpClient = new HttpClient())
{
using (var request = new HttpRequestMessage(new HttpMethod("GET"), "http://servername:15672/api/cluster-name"))
{
var base64authorization = Convert.ToBase64String(Encoding.ASCII.GetBytes($"somename:somepassword"));
request.Headers.TryAddWithoutValidation("Authorization", $"Basic {base64authorization}");
var response = httpClient.SendAsync(request).Result;
if (response.IsSuccessStatusCode == true)
{
string jsonContent = response.Content.ReadAsStringAsync().Result;
}
}
}
Код выше C#, но это будет тот же процесс для Java, et c.