Optional
preprocessCan be used to change request parameters before a request is made.
This will not be called before a retryHttpRequest.
Example:
network: {
preprocessHttpRequest: function(type, request) {
if (type === bitmovin.player.HttpRequestType.DRM_LICENSE_WIDEVINE) {
// withCredentials = true
request.credentials = 'include';
// custom headers
request.headers['customdata'] = 'AUTHENTICATION-XML';
} else if (type === bitmovin.player.HttpRequestType.MEDIA_VIDEO ||
type === bitmovin.player.HttpRequestType.MEDIA_AUDIO) {
// async call of custom API and add token to media URLs
return customApiCall.then(function(data) {
request.url += '?token=' + data.token;
return request;
});
}
return Promise.resolve(request);
}
}
String type of the request to be made.
Configuration object of the request.
The request can be canceled with Promise.reject()
or
data can be retrieved asynchronously before processing the request properties.
Optional
preprocessCan be used to the access or change properties of the response before it gets into the player.
Example:
network: {
preprocessHttpResponse: function(type, response) {
if (type === bitmovin.player.HttpRequestType.DRM_LICENSE_WIDEVINE) {
drmHeaders = response.headers;
}
}
}
String type of the request to be made.
Contains all important fields of the response.
The response that shall go back into the player.
Optional
requestSpecifies which Browser API should be used to perform network requests.
Default is XHR.
8.149.0
Optional
retryIs called when a request is failed. Will override the default retry behavior.
Example:
network: {
retryHttpRequest: function(type, response) {
// delay the retry by 1 second
return new Promise(function(resolve) {
setTimeout(function() {
resolve(response.request);
}, 1000);
});
}
}
String type of the request to be made.
Response of the failed request.
Amount of retries
The request that shall be used on the retry.
Optional
sendCan be used to provide a custom implementation to download requested files.
When null
or undefined
is returned for a certain request, the default implementation is used.
Example:
network: {
sendHttpRequest: function(type, request) {
return {
getResponse: function() {
// get data from somewhere else
var response = {
request: request,
url: request.url,
headers: {},
status: 200,
statusText: 'OK',
body: 'my message',
}
return Promise.resolve(response);
},
setProgressListener: function() {},
cancel: function() {},
}
}
}
String type of the request to be made.
Configuration object of the request.
The custom implementation of the RequestController.
7.7
The network API gives the ability to influence network requests. It enables preprocessing requests, processing responses or influencing the retry behavior.
Since
7.4