This repository has been archived by the owner on Aug 1, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 31
api net.http
Ayhan Rashidov edited this page Oct 11, 2021
·
9 revisions
Represents the http namespace with its fields.
- SAP Help
https://help.sap.com/doc/3de842783af24336b6305a3c0223a369/2.0.03/en-US/$.net.http.html
- Module
- Sample usage:
let http = $.net.http;
/*
Read service.xshttpdest inside the Demo package that contains:
host=https://services.odata.org;
pathPrefix=/V4/Northwind/Northwind.svc/;
*/
let destination = http.readDestination("Demo", "service");
// create client
let client = new http.Client();
let request = new http.Request(http.GET, "/"); // new Request(METHOD, PATH)
// the PATH will be prefixed by destination's pathPrefix, e.g. "/search?" on the request
// set the timeout in seconds
client.setTimeout(10);
// send the request and synchronously get the response
client.request(request, dest);
let response = client.getResponse();
// get all the cookies and headers from the response
let cookies = [], headers = [];
for(let i = 0; i< response.cookies.length; i++) {
cookies.push(response.cookies[i]);
}
for(let i = 0; i< response.headers.length; i++) {
headers.push(response.headers[i]);
}
// get the body
let body;
if(!response.body)
body = "";
else
body = response.body;
// close the connection
client.close(); // prevent socket leak - see xsengine.ini: [communication] - max_open_sockets_per_request
// check the contents of the response
$.response.setBody("status: " + response.status + " cookies: " + JSON.stringify(cookies) + " headers: " + JSON.stringify(headers) + " body: " + body.asString());
- Coverage
Classes | Description | Status |
---|---|---|
Destination | Contains metadata, for example, host name, port number and custom values. | ✅ |
Client | HTTP(s) Client for outbound connectivity. This client supports HTTP and HTTPs connections over HTTP or SOCKS proxy. | ✅ |
Request | Request class to be used with HTTP client. | ✅ |
Methods | Description | Status |
---|---|---|
readDestination(package, objectName) | Returns the HTTP destination with the given name as a Destination object. | ✅ |
- HTTP constants for methods
Members | Type | Default | Description | Status |
---|---|---|---|---|
OPTIONS | number | 0 | HTTP Method OPTIONS. | ✅ |
GET | number | 1 | HTTP Method GET. | ✅ |
HEAD | number | 2 | HTTP Method HEAD. | ✅ |
POST | number | 3 | HTTP Method POST. | ✅ |
PUT | number | 4 | HTTP Method PUT. | ✅ |
DEL | number | 5 | HTTP Method DEL. | ✅ |
TRACE | number | 6 | HTTP Method TRACE. | ✅ |
CONNECT | number | 7 | HTTP Method CONNECT. | ✅ |
PATCH | number | 8 | HTTP Method PATCH. | ✅ |
- HTTP constants for status codes
Members | Type | Default | Status |
---|---|---|---|
CONTINUE | number | 100 | ✅ |
SWITCH_PROTOCOL | number | 101 | ✅ |
OK | number | 200 | ✅ |
CREATED | number | 201 | ✅ |
ACCEPTED | number | 202 | ✅ |
NON_AUTHORITATIVE | number | 203 | ✅ |
NO_CONTENT | number | 204 | ✅ |
RESET_CONTENT | number | 205 | ✅ |
PARTIAL_CONTENT | number | 206 | ✅ |
MULTIPLE_CHOICES | number | 300 | ✅ |
MOVED_PERMANENTLY | number | 301 | ✅ |
FOUND | number | 302 | ✅ |
SEE_OTHER | number | 303 | ✅ |
NOT_MODIFIED | number | 304 | ✅ |
USE_PROXY | number | 305 | ✅ |
TEMPORARY_REDIRECT | number | 307 | ✅ |
BAD_REQUEST | number | 400 | ✅ |
UNAUTHORIZED | number | 401 | ✅ |
PAYMENT_REQUIRED | number | 402 | ✅ |
FORBIDDEN | number | 403 | ✅ |
NOT_FOUND | number | 404 | ✅ |
METHOD_NOT_ALLOWED | number | 405 | ✅ |
NOT_ACCEPTABLE | number | 406 | ✅ |
PROXY_AUTH_REQUIRED | number | 407 | ✅ |
REQUEST_TIMEOUT | number | 408 | ✅ |
CONFLICT | number | 409 | ✅ |
GONE | number | 410 | ✅ |
LENGTH_REQUIRED | number | 411 | ✅ |
PRECONDITION_FAILED | number | 412 | ✅ |
REQUEST_ENTITY_TOO_LARGE | number | 413 | ✅ |
REQUEST_URI_TOO_LONG | number | 414 | ✅ |
UNSUPPORTED_MEDIA_TYPE | number | 415 | ✅ |
REQUESTED_RANGE_NOT_SATISFIABLE | number | 416 | ✅ |
EXPECTATION_FAILED | number | 417 | ✅ |
INTERNAL_SERVER_ERROR | number | 500 | ✅ |
NOT_YET_IMPLEMENTED | number | 501 | ✅ |
BAD_GATEWAY | number | 502 | ✅ |
SERVICE_UNAVAILABLE | number | 503 | ✅ |
GATEWAY_TIMEOUT | number | 504 | ✅ |
HTTP_VERSION_NOT_SUPPORTED | number | 505 | ✅ |
- Issues
- Unit Tests
- Integration Tests ❌
✅ - Feature implemented and working as supposed.
❌ - Feature not implemented yet.