클라이언트 측 자바 스크립트와 함께 Grafana Http API 를 사용할 수 있습니까? 이미 생성 된 대시 보드의 json을 얻는 기본적인 것부터 시작합니다.
function getHome2Dashboard(callback) {
$.ajax({
type: 'GET',
url: 'http://localhost:3000/api/dashboards/db/home-2',
crossDomain: true,
dataType: 'json',
headers: {
"Authorization": "Bearer eyJrIjoiYkdURk91VkNQSTF3OVdBWmczYUNoYThPOGs0QTJWZVkiLCJuIjoidGVzdDEiLCJpZCI6MX0="
},
success: function(data)
{
if( callback ) callback(data);
},
error: function(err)
{
console.log(err);
}
});
그러나 나는 얻는다 :
No 'Access-Control-Allow-Origin' header is present on the requested resource
.
또한 jsonp
접근 방식을 사용해 보았습니다 . 개발 도구는 서버가 json 데이터를 다시 보내지 만 결과가 콜백 함수 내에 래핑되지 않았기 때문에 js가 실패한다는 것을 보여줍니다. 이를 구현하는 방법에 대한 모든 제안을 환영합니다 ...
// At the moment I think of something like:
┌──────────┐ ┌───────────┐
│ Browser │ <-------> │ Grafana │
└──────────┘ └───────────┘
// In order to overcome the cross-origin problems,
// should I go towards something like this?:
┌──────────┐ ┌───────────┐ ┌───────────┐
│ Browser │ <-------> │ Web api │ <-------> │ Grafana │
└──────────┘ └───────────┘ └───────────┘
에 따르면, 이 링크 가없는 현재 당신이 거기 헤더를 nginx를 같은 역방향 프록시 뒤에 Grafana 서버를두고 추가해야합니다, 그래서 직접 서버 설정 CORS 헤더에 Grafana의 방법.
직면 한 문제를 이해하려면 CORS 에 대한 Mozilla 개발자 문서를 참조하십시오 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다