Advertisement
Guest User

Untitled

a guest
Jan 29th, 2020
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. metadata = {
  2. "systemName": "JsspITest_XHRExecute",
  3. "displayName": "JavaScript Service Provider XHR Execute Test",
  4. "description": "This is for integration test purposes."
  5. };
  6.  
  7. ondescribe = function () {
  8. postSchema({
  9. objects: {
  10. "Jssp_XHRTest": {
  11. displayName: "Jssp_XHRTest",
  12. description: "Jssp_XHRTest.description",
  13. isActive: true,
  14. properties: {
  15. "Id": { displayName: "Id", description: "Id", type: "number" },
  16. "Author": { displayName: "Author", description: "Author", type: "string" },
  17. "Title": { displayName: "Title", description: "Title", type: "string" }
  18.  
  19. },
  20. methods: {
  21. "GetTitle": {
  22. displayName: "Get Title",
  23. description: "Get Title description",
  24. type: "read",
  25. outputs: ["Title", "Author"]
  26. },
  27. }
  28. }
  29. }
  30. });
  31. }
  32.  
  33. onexecute = function (objectName, methodName, parameters, properties) {
  34. switch (objectName) {
  35. case "Jssp_XHRTest":
  36. executeXHRTest(methodName, parameters, properties);
  37. break;
  38. default:
  39. throw new Error("the object " + objectName + " is not supported.");
  40. }
  41. }
  42.  
  43. function executeXHRTest(methodName, parameters, properties) {
  44. switch (methodName) {
  45. case "GetTitle":
  46. executeGetTitleMethod(parameters, properties);
  47. break;
  48. default: throw new Error("The method " + methodName + " is not supported.");
  49. }
  50. }
  51.  
  52. function executeGetTitleMethod(parameters, properties) {
  53. var xhr = new XMLHttpRequest();
  54.  
  55. xhr.onreadystatechange = function () {
  56. if (xhr.readyState !== 4) return;
  57. if (xhr.status !== 200) throw new Error("Failed with status " + xhr.status);
  58. var obj = JSON.parse(xhr.responseText);
  59. postResult({
  60. "Title": obj['result'],
  61. "Author": obj['header']
  62. });
  63. };
  64. xhr.open("GET", 'https://jsserviceprovider-itest-dev.azurewebsites.net/needAuthHeader');
  65. xhr.withCredentials = "true";
  66. xhr.send();
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement