GithubHelp home page GithubHelp logo

993544899 / office-inspectors-for-fiddler Goto Github PK

View Code? Open in Web Editor NEW

This project forked from officedev/office-inspectors-for-fiddler

0.0 0.0 0.0 15.68 MB

Microsoft Office (MAPI, WOPI, and FSSHTTP) inspectors for Fiddler

License: MIT License

JavaScript 0.14% C# 99.70% PowerShell 0.12% Batchfile 0.04%

office-inspectors-for-fiddler's Introduction

Microsoft Office Inspectors for Fiddler

This README document provides the instruction on installing Microsoft Office Inspectors for Fiddler.

The MAPI Inspector evaluates the captured traffic between Outlook and Exchange; whereas the FSSHTTPandWOPI Inspector evaluates the captured traffic between client and SharePoint. These Microsoft Office Inspectors are able to display the protocol content in a user-friendly format. You may choose to install one or both inspectors.

For details on how to use the inspectors: see MAPI Inspector for Fiddler User Guide, see also FSSHTTPandWOPI Inspector for Fiddler User Guide.

Overview

The Messaging Application Programming Interface (MAPI) Inspector for Fiddler decodes the MAPI message payload of an HTTP POST request and response according to MS-OXCMAPIHTTP. The MAPI Inspector is displayed under the Inspectors tab in Fiddler.

In addition to the MAPI Inspector, the File Synchronization via SOAP over HTTP Protocol (FSSHTTP) and the Web Application Open Platform Interface Protocol (WOPI)—combined as FSSHTTPandWOPI—also has a plug-in inspector for Fiddler which decodes:

  • FSSHTTP protocol message that enables one or more clients to synchronize changes done on shared files stored on a server.
  • WOPI protocol message that enables a client to access and change files stored by a server.

The FSSHTTPandWOPI Inspector is displayed under the Inspectors tab in Fiddler and decodes the message payload according to MS-FSSHTTP, MS-FSSHTTPB, MS-FSSHTTPD and MS-WOPI.

This repository also includes Jscript that adds an MS Protocol column in the Fiddler web session panel. The MS Protocol column displays protocols that are relevant to MAPI, FSSHTTP, and WOPI messages, thereby allowing you to easily identify which HTTP requests and responses contain the respective message payloads.

Building the Inspectors

Each of the inspectors has a Visual Studio solution file in the Source folder, for example:

`Office-Inspectors-for-Fiddler\FSSHTTPWOPIInspector\Source\FSSHTTPandWOPIInspector.sln`
`Office-Inspectors-for-Fiddler\MAPIInspector\Source\MAPIInspector.sln`

These will allow you to modify and build the inspector dlls.

NOTE: There are dependencies on a few libraries and some of these are found in the Fiddler install folder. Specifically, the correct versions of the Xceed and HexBox libraries can be found in your system's install folder for Fiddler. These are the libraries that you should point the Visual Studio inspector projects to for references. For example:

`C:\Users\<username>\AppData\Local\Programs\Fiddler\Be.Windows.Forms.HexBox.dll`
`C:\Users\<username>\AppData\Local\Programs\Fiddler\Xceed.Compression.v5.4.dll`

Installation

First install the latest Fiddler tool and then run it. Note that Fiddler must be run at least once before installing any inspectors. To install the inspector of your choice (MAPI, FSSHTTPWOPI) or to install both, add the respective DLL files and the scripts.

Inspector DLL

  1. Copy the file MAPIFiddlerInspector.dll into the C:\Program Files\Fiddler2\Inspectors directory. Alternatively, you can clone this repository, build the MAPIFiddlerInspector.dll, and copy the built .dll to your C:\Program Files\Fiddler2\Inspectors directory.

    Follow the same process if you wish to use FSSHTTPAndWOPIFiddlerInspector.dll.

  2. Restart Fiddler. MAPI, FSSHTTPandWOPI or both Inspectors will appear under the Inspectors tab for request and response. See the following screenshot.

    alt tag

Script

  1. From the Rules menu, which is shown in the following screenshot, click Customize Rules.

    alt tag

  2. When the following message box displays, click Yes to install the FiddlerScript editor.

    alt tag

  3. Restart Fiddler after installing the FiddlerScript editor. Fiddler displays a new tab, FiddlerScript, as shown in the following screenshot.

    alt tag

  4. Copy the code from the MAPI.js file and paste it into the definition for the Handlers class. Click Save Script to save the script. Follow the same process if you wish to use only the FSSHTTPAndWOPI.js file.

    But if you wish to add the code from the FSSHTTPAndWOPI.js file, then update CalcMethodCol function definition with the code for FSSHTTP and WOPI. Don't forget to add GetWOPIOperationName function definition as well.

    Note: When you combine the scripts for MAPI and FSSHTTP in function CalcMethodCol, modify the code accordingly to ensure protocol names are displayed under the MS Protocol column. As shown below, the else statement is removed and the if statement for MAPI is added.

    alt tag

  5. Restart Fiddler. The MS Protocol column is displayed in the session view.

    alt tag

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

office-inspectors-for-fiddler's People

Contributors

jiaxiaoyan23 avatar iamwenbozhang avatar stephenegriffin avatar fangfangfan avatar huilidong avatar annelsgb avatar nokafor avatar ivylinms avatar changdu2021 avatar sandrasc avatar xinwli avatar jinlinxu avatar jinghuizhang-msft avatar cherubic avatar xian-rong avatar mibowm avatar o365devx avatar bradhugh avatar davidchesnut avatar v-fanfan avatar jingyushao avatar lindalu-msft avatar v-xiaofangbi avatar v-xiahu avatar lduran-smartertools avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.