kreamik
kreamik

Reputation: 627

How to set 'Referer' HTTP header using Apache HttpComponents HttpClient

I wrote php curl to request some data from my API server, and now I want to develop a JSP to request the data from the same API server.

The problem comes when my API server need http referer to check if the request come from a valid url.

My original PHP is:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/2');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, 'http://www.example.com/1');
$html = curl_exec($ch);

... then my api server get the referer url with

var_dump($_SERVER['HTTP_REFERER'])

How do I use Apache HttpComponents HttpClient to set the Referer header?

Upvotes: 4

Views: 14660

Answers (1)

chengpohi
chengpohi

Reputation: 14217

HttpGet request = new HttpGet("http://www.example.com/2")

request.addHeader("Referer", "http://www.example.com/1")

HttpResponse response = HttpClientBuilder.create().build().execute(request)

You can set header by using AbstractHttpMessage addHeader

Upvotes: 4

Related Questions