Wally Kolcz
Wally Kolcz

Reputation: 1664

Getting back JSON using cURL

I am attempting to learn cURL to use a JSON web service. I tried a couple tutorials online and none seem to be helping.

I want to get to this web address: https://uat.petfirsthealthcare.com/pfh.service.webservices/coreservice.svc/json/GetColorList and return the results to use in another call. But when I try, I don't get any thing back.

I used this:

$request = 'https://uat.petfirsthealthcare.com/pfh.service.webservices/coreservice.svc/json/GetColorList';
curl_init($request);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
$response = curl_exe($session);
curl_close($session);
echo $response;

When you just go to the URL it return JSON just fine. Thanks for any help you can provide!

Upvotes: 0

Views: 578

Answers (3)

Bogdan Burym
Bogdan Burym

Reputation: 5512

This is TESTED and WORKS!

<?php

$request = 'https://uat.petfirsthealthcare.com/pfh.service.webservices/coreservice.svc/json/GetColorList';
$session = curl_init();
curl_setopt($session, CURLOPT_URL, $request);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_SSLVERSION,3); 
curl_setopt($session, CURLOPT_SSL_VERIFYPEER, FALSE); 
curl_setopt($session, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
curl_setopt($session, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($session, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
$response = curl_exec($session);
curl_close($session);
var_dump($response);

Upvotes: 2

Jason McCreary
Jason McCreary

Reputation: 72981

You have two problems that I can see:

  1. You did not assign $session
  2. It is curl_exec(), not curl_exe

Updated Code

<?php
$request = 'https://uat.petfirsthealthcare.com/pfh.service.webservices/coreservice.svc/json/GetColorList';
$session = curl_init($request);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($session);
curl_close($session);
echo $response;

Upvotes: 0

Praveen Kumar Purushothaman
Praveen Kumar Purushothaman

Reputation: 167172

Did you initialize the $session?

$session = curl_init($request);

And there is a typo here:

$response = curl_exec($session);

Upvotes: 1

Related Questions