Proxying requests

One of SDK objectives is to proxy requests to Finteza via your website. For details, please visit the "Proxying the script and requests" section.

To enable proxying, set the relevant proxy parameters in addition to the main parameters in the ConfigureServices initialization method:

services.AddFintezaAnalytics(options =>
{
    options.WebsiteId = "{WEBSITE_ID}";
    options.Token = "{Token}";
    options.Path = "{Path}";
...
});

Parameter

Type

Description

Token *

string

Token for signing the X-Forwarded-For header. You can get this value in the website settings of the Finteza panel: open the Counter section, enable the "Proxying the script and requests" option and copy the value from the "Proxy token" field.

 

When proxying, all requests to Finteza are physically sent from your website's server rather than directly from clients. In order to pass real IP addresses of clients (and not just the site address) to Finteza, SDK uses the X-Forwarded-For header.

 

In order to prevent traffic inflation by spoofing requests and provide only real data on website visits, Finteza checks a header signature in requests. If a header is signed by the unique website token, the system trusts its values. Otherwise, the traffic is considered "inflated" (traffic reports are available in the Quality website section of the Finteza panel).

Path

string

Beginning of the path for requests to be proxied. If the parameter is not specified, the default /fz value will be used.

 

Below are the necessary changes to the tracking code, so that all requests to Finteza are executed along the paths with the specified beginning.

* – required parameters.

Example:

services.AddFintezaAnalytics(options =>
{
    options.WebsiteId = "opemapikpuymgukzpihgweylppotinamyf";
    options.Token = "joanmxozikjgeqlgguazmzoplankaqlg";
    options.Path = "/fz";
...
});

After that, add the following line in the Configure method of the Startup class:

app.UseFintezaAnalyticsProxy();

The UseFintezaAnalyticsProxy method creates a special middleware, which independently routes incoming requests and only proxies analytical requests to Finteza.

Note: Change the tracking code after configuring proxying.