Web proxy tool add-on for XrmToolBox to log all HTTP(S) traffic between your computer and CDS environment and/or any other internet portal. Inspect traffic, update on the fly, and fiddle with request/response.
- Proxie 2 4 1 – Http Debugging Proxy Server Settings
- Proxie 2 4 1 – Http Debugging Proxy Server Download
Current version: 1.22.5.2020 (beta)
DebugProxy is a HTTP/S hosted proxy server that lets you interact with the traffic passing through it, using a web based dashboard. This means, for example, you can use the browser on your desktop or tablet to view the traffic being sent from apps on your mobile phone to the Internet. Charles Web Debugging Proxy v.3.6.5 Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that enables a developer to view all of the HTTP traffic. SwiftSurf v.1.2.5 SwiftSurf is a web proxy that can handle http (1.
Key features:
* Override HTTP(s) Responses and Requests on the fly and directly in the text area with JS, HTML, CSS, JSON syntax highlight, and formatting.
* Detect and hook requests that contain FetchXML or Views and provides the possibility to test, change and execute them.
* Possibility to create a dedicated Chrome environment to avoid cashing and check your requests outside your standard browser configuration.
* Embedded JS engine to run custom scripts and as example update CDS metadata on the fly.
* Possibility to configure autoresponse for typical requests.
* Possibility to execute any requests manually.
Some usage examples:
1. Hook Fetch XML
Open the list of contacts and wait until it loaded, then click 'Start Capture'. Try to switch between contact views. The system will send fetchXml requests depends on the view type. CDS Debugging Proxy will capture requests and show them in an appropriate view. Free photo scissors. Chose one of them which contains fetchXml and go 'Hooked FetchXml' section to analyze it.
This will also work for system views. So if the request contains ViewId the CDS debugging proxy will try to extract the fetchXML and show the view name.
2. Update action for the 'Refresh' button on contact HomePageGrid only using a proxy server.
You should launch Chrome without caching to implement this. 'No cache' button.
To start capturing data, click 'Start Capture'. Open the list of contacts and put a filter to capture only HomePageGrid and Main_system_library.js. Use ‘;' as a separator.
First of all let's review requests, we need to modify. We have two. First one is metadata request:
api/data/v9.0/GetClientMetadata(ClientMetadataQuery=@ClientMetadataQuery)?@ClientMetadataQuery={%22MetadataType%22%3A%22ribbon%22,%22MetadataSubtype%22%3Anull,%22EntityLogicalName%22%3A%22contact%22,%22MetadataId%22%3Anull,%22MetadataNames%22%3A[%22HomePageGrid%22],%22GetDefault%22%3Afalse,%22DependencyDepth%22%3A%22OnDemandWithoutContext%22,%22ChangedAfter%22%3A%222154182%22,%22Exclude%22%3A[],%22AppId%22%3A%223ed211b3-c292-ea11-a815-000d3a5916ef%22}&umv=2154182&mv=2695734&api-version=9.1
This request will return ribbons configuration for contact HomePageGrid.
We need to update the function.
Second is the js file with the function which should be executed.
%7b637259916190017162%7d/webresources/Main_system_library.js
To update metadata is easier to use a script. Go to the Script section and past the following script.
Don't forget to check 'Use JS Script.'
This script will be executed for each response.
The next part is to add our function to Main_system_library.js. This is quite simple. Select the request in the list of requests and add the function on top of the file.
Don't forget to check 'Override response by URL'.
Next time when you refresh the page script will update metadata, and Js file will be replaced by our changes.
3. Downloading all images from Dynamics Marketing
Proxie 2 4 1 – Http Debugging Proxy Server Settings
Suppose you want to download all files from marketing content area. You can use CDS Debugging Proxy for this. Just open the appropriate section in Dynamics Marketing.
Then click 'Start capture' in CDS Debugging Proxy and Refresh the page using the 'Refresh' button from the ribbon.
You will capture fetchXml request which extracts all needed information about images.
/api/data/v9.0/msdyncrm_files?fetchXml=%3Cfetch%20version%3D%221.0%22%20mapping%3D%22logical%22%20returntotalrecordcount%3D%22true%22%20page%3D%221%22%20count%3D%2250%22%20no-lock%3D%22false%22%3E%3Centity%20name%3D%22msdyncrm_file%22%3E%3Cattribute%20name%3D%22statecode%22%2F%3E%3Cattribute%20name%3D%22modifiedon%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_fileid%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_name%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_bloburi%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_width%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_thumbnail_url%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_height%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_blobsize%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_contenttype%22%2F%3E%3Cattribute%20name%3D%22msdyncrm_blobcdnuri%22%2F%3E%3Cattribute%20name%3D%22createdon%22%2F%3E%3Corder%20attribute%3D%22createdon%22%20descending%3D%22true%22%2F%3E%3Cfilter%20type%3D%22and%22%3E%3Ccondition%20attribute%3D%22statecode%22%20operator%3D%22eq%22%20value%3D%220%22%2F%3E%3C%2Ffilter%3E%3C%2Fentity%3E%3C%2Ffetch%3E
The response of this request is the following JSON structure
The next step for us should be to parce this structure and download the files according to the links. Go to 'Script' section and past following script
Proxie 2 4 1 – Http Debugging Proxy Server Download
Don't forget to check 'Use JS script'. Next time you click 'Refresh' button in your Dynamics Marekting app, the system will send the same request and the script will parce the response and download files to provided folder C:marketingimgs