Hello, first of all, i'm sorry if this is the wrong forum, and if i mispell something.
I need to get a string/json from this api: https://api.twitch.tv/kraken/streams/pedrinholuizf and check if 'streams' is null or not, how can I do it? Any external libraries that I can use? Exampel code would be great too.
Client test code that captures what is sent from the server in the variable readString, which then can be evaluated for specific content.
//zoomkat 11-04-13
//simple client test
//for use with IDE 1.0.1
//with DNS, DHCP, and Host
//open serial monitor and send an e to test client GET
//for use with W5100 based ethernet shields
//remove SD card if inserted
//data from myIP server captured in readString
#include <SPI.h>
#include <Ethernet.h>
String readString;
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //physical mac address
char serverName[] = "checkip.dyndns.com"; // myIP server test web page server
EthernetClient client;
//////////////////////
void setup(){
 if (Ethernet.begin(mac) == 0) {
  Serial.println("Failed to configure Ethernet using DHCP");
  // no point in carrying on, so do nothing forevermore:
  while(true);
 }
 Serial.begin(9600);
 Serial.println("client readString test 11/04/13"); // so I can keep track of what is loaded
 Serial.println("Send an e in serial monitor to test"); // what to do to test
 Serial.println();
}
void loop(){
 // check for serial input
 if (Serial.available() > 0) //if something in serial buffer
 {
  byte inChar; // sets inChar as a byte
  inChar = Serial.read(); //gets byte from buffer
  if(inChar == 'e') // checks to see byte is an e
  {
   sendGET(); // call sendGET function below when byte is an e
  }
 }Â
}
//////////////////////////
void sendGET() //client function to send/receive GET request data.
{
 if (client.connect(serverName, 80)) { //starts client connection, checks for connection
  Serial.println("connected");
  client.println("GET / HTTP/1.1"); //download text
  client.println("Host: checkip.dyndns.com");
  client.println("Connection: close"); //close 1.1 persistent connectionÂ
  client.println(); //end of get request
 }
 else {
  Serial.println("connection failed"); //error message if no client connect
  Serial.println();
 }
 while(client.connected() && !client.available()) delay(1); //waits for data
 while (client.connected() || client.available()) { //connected or data available
  char c = client.read(); //gets byte from ethernet buffer
  readString += c; //places captured byte in readString
 }
 //Serial.println();
 client.stop(); //stop client
 Serial.println("client disconnected.");
 Serial.println("Data from server captured in readString:");
 Serial.println();
 Serial.print(readString); //prints readString to serial monitor
 Serial.println();Â
 Serial.println();
 Serial.println("End of readString");
 Serial.println("==================");
 Serial.println();
 readString=""; //clear readString variable
}