Last active
March 27, 2018 19:44
-
-
Save Siliconrob/129c6bec9c4cc2034086565695cccaea to your computer and use it in GitHub Desktop.
HTTPS Solcast API GET
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/*************************************************************************** | |
* _ _ ____ _ | |
* Project ___| | | | _ \| | | |
* / __| | | | |_) | | | |
* | (__| |_| | _ <| |___ | |
* \___|\___/|_| \_\_____| | |
* | |
* Copyright (C) 1998 - 2015, Daniel Stenberg, <[email protected]>, et al. | |
* | |
* This software is licensed as described in the file COPYING, which | |
* you should have received as part of this distribution. The terms | |
* are also available at https://curl.haxx.se/docs/copyright.html. | |
* | |
* You may opt to use, copy, modify, merge, publish, distribute and/or sell | |
* copies of the Software, and permit persons to whom the Software is | |
* furnished to do so, under the terms of the COPYING file. | |
* | |
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | |
* KIND, either express or implied. | |
* | |
***************************************************************************/ | |
/* <DESC> | |
* Simple HTTPS GET | |
* </DESC> | |
*/ | |
#include <stdio.h> | |
#include <curl/curl.h> | |
int main(void) | |
{ | |
CURL *curl; | |
CURLcode res; | |
curl_global_init(CURL_GLOBAL_DEFAULT); | |
curl = curl_easy_init(); | |
if(curl) { | |
curl_easy_setopt(curl, CURLOPT_URL, "https://api.solcast.com.au/pv_power/forecasts?longitude=149.117&latitude=-35.277&capacity=1000&api_key=YOUR_API_KEY&format=json"); | |
#ifdef SKIP_PEER_VERIFICATION | |
/* | |
* If you want to connect to a site who isn't using a certificate that is | |
* signed by one of the certs in the CA bundle you have, you can skip the | |
* verification of the server's certificate. This makes the connection | |
* A LOT LESS SECURE. | |
* | |
* If you have a CA cert for the server stored someplace else than in the | |
* default bundle, then the CURLOPT_CAPATH option might come handy for | |
* you. | |
*/ | |
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); | |
#endif | |
#ifdef SKIP_HOSTNAME_VERIFICATION | |
/* | |
* If the site you're connecting to uses a different host name that what | |
* they have mentioned in their server certificate's commonName (or | |
* subjectAltName) fields, libcurl will refuse to connect. You can skip | |
* this check, but this will make the connection less secure. | |
*/ | |
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); | |
#endif | |
/* Perform the request, res will get the return code */ | |
res = curl_easy_perform(curl); | |
/* Check for errors */ | |
if(res != CURLE_OK) | |
fprintf(stderr, "curl_easy_perform() failed: %s\n", | |
curl_easy_strerror(res)); | |
/* always cleanup */ | |
curl_easy_cleanup(curl); | |
} | |
curl_global_cleanup(); | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
FIRST REPLACE THE TEXT
YOUR_API_KEY
with your SOLCAST API KEYUbuntu 16.04
To run this you should have the cURL headers installed
Now compile -lcurl is where you get to link against cURL library
Now you can run it