EasyXDM is used to provide cross domain POST requests, overcoming the Same-Origin-Policy restrictions in browsers.
EasyXDM works differently from other 3rd party code. You have to maintain multiple versions of EasyXDM, so that other software that calls Opsview can interoperate.
It works by calling http://opsviewserver/restxdmxhr.html?version=VERSION. This will load the specific version of EasyXDM.
Only certain versions are installed. The REST API will return which is the latest version of EasyXDM that is available on the Opsview server.
To add new EasyXDM versions:
- Download the new version from http://easyxdm.net
- Add to opsview-base
- Update Makefile so EASYXDM variable includes the new version
- Create a new opsview-web/root/easyxdm-VERSION with the restxdmxhr.html file within. Duplicate from the previous version
- Compare if restxdmxhr.html is different from cors/index.html, to add any new functionality
- Update opsview-web/lib/Opsview/Web/Controller/Root.pm's $easyxdm_versions hash with the new version. Set the new version with a value of “highest”
- Confirm that /rest returns this newer version
- Confirm that /restxdmxhr.html?version=highest returns the correct version in the title
- Check opsview-web/t/650-api2-version.t passes