Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
cognitive-services-quickstart-code/java/Face/rest/detect.java
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
88 lines (76 sloc)
3.06 KB
This file contains 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
// <dependencies> | |
// This sample uses Apache HttpComponents: | |
// http://hc.apache.org/httpcomponents-core-ga/httpcore/apidocs/ | |
// https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/ | |
import java.net.URI; | |
import org.apache.http.HttpEntity; | |
import org.apache.http.HttpResponse; | |
import org.apache.http.client.HttpClient; | |
import org.apache.http.client.methods.HttpPost; | |
import org.apache.http.entity.StringEntity; | |
import org.apache.http.client.utils.URIBuilder; | |
import org.apache.http.impl.client.HttpClientBuilder; | |
import org.apache.http.util.EntityUtils; | |
import org.json.JSONArray; | |
import org.json.JSONObject; | |
// </dependencies> | |
// <environment> | |
/* | |
* To compile and run, enter the following at a command prompt: | |
* javac Detect.java -cp .;lib\* | |
* java -cp .;lib\* Detect | |
*/ | |
public class Detect { | |
private static final String subscriptionKey = "PASTE_YOUR_FACE_SUBSCRIPTION_KEY_HERE"; | |
private static final String endpoint = "PASTE_YOUR_FACE_ENDPOINT_HERE"; | |
private static final String imageWithFaces = | |
"{\"url\":\"https://upload.wikimedia.org/wikipedia/commons/c/c3/RH_Louise_Lillian_Gish.jpg\"}"; | |
// </environment> | |
// <main> | |
public static void main(String[] args) { | |
HttpClient httpclient = HttpClientBuilder.create().build(); | |
try | |
{ | |
URIBuilder builder = new URIBuilder(endpoint + "/face/v1.0/detect"); | |
// Request parameters. All of them are optional. | |
builder.setParameter("detectionModel", "detection_03"); | |
builder.setParameter("returnFaceId", "true"); | |
// Prepare the URI for the REST API call. | |
URI uri = builder.build(); | |
HttpPost request = new HttpPost(uri); | |
// Request headers. | |
request.setHeader("Content-Type", "application/json"); | |
request.setHeader("Ocp-Apim-Subscription-Key", subscriptionKey); | |
// Request body. | |
StringEntity reqEntity = new StringEntity(imageWithFaces); | |
request.setEntity(reqEntity); | |
// Execute the REST API call and get the response entity. | |
HttpResponse response = httpclient.execute(request); | |
HttpEntity entity = response.getEntity(); | |
// </main> | |
// <print> | |
if (entity != null) | |
{ | |
// Format and display the JSON response. | |
System.out.println("REST Response:\n"); | |
String jsonString = EntityUtils.toString(entity).trim(); | |
if (jsonString.charAt(0) == '[') { | |
JSONArray jsonArray = new JSONArray(jsonString); | |
System.out.println(jsonArray.toString(2)); | |
} | |
else if (jsonString.charAt(0) == '{') { | |
JSONObject jsonObject = new JSONObject(jsonString); | |
System.out.println(jsonObject.toString(2)); | |
} else { | |
System.out.println(jsonString); | |
} | |
} | |
} | |
catch (Exception e) | |
{ | |
// Display error message. | |
System.out.println(e.getMessage()); | |
} | |
} | |
} | |
// </print> |