पास नहीं कर रहा है मैं वसंत के RestTemplate का उपयोग कर एक क्रॉस-मूल अनुरोध करने की कोशिश कर रहा हूं। संचार दो स्प्रिंग-बूट वेबपैप्स के बीच किया जाता है, दोनों स्थानीयहोस्ट पर चल रहे हैं लेकिन अलग-अलग बंदरगाह पर चल रहे हैं। मैं क्या है:RestTemplate मूल शीर्षक
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setOrigin("http://localhost:8083");
httpHeaders.add("Authorization", token);
HttpEntity<Void> httpEntity = new HttpEntity<>(httpHeaders);
ParameterizedTypeReference<List<MyObj>> beanType = new ParameterizedTypeReference<List<MyObj>>() {};
ResponseEntity<List<MyObj>> list = restTemplate.exchange(serviceURL, HttpMethod.GET, httpEntity, beanType);
कॉल निष्पादित, "प्राधिकरण" शीर्षक ठीक पारित कर दिया है, लेकिन कोई फर्क नहीं पड़ता कि मैं क्या करने की कोशिश, प्राप्त पक्ष पर नहीं "उत्पत्ति" शीर्षक है। जब मैं किसी अन्य टूल (सोपयूआई, रेस्ट क्लाइंट क्रोम प्लगइन इत्यादि) का उपयोग करके सिमिलर अनुरोध बनाता हूं तो हेडर पास किया जाता है जैसे ही मैं इसे प्रदान करता हूं।
मैं javax.servlet.Filter के कार्यान्वयन का उपयोग कर रहा साथ प्राप्त ओर सभी हेडर प्रिंट करने के लिए:
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
Enumeration<String> headerNames = request.getHeaderNames();
while (headerNames.hasMoreElements()) {
String headerName = headerNames.nextElement();
log.info(headerName + ": " + request.getHeader(headerName));
}
}
जब RestTemplate का उपयोग कर क्यों मूल हैडर पारित नहीं किया जाता है?