XrmDefinitelyTyped icon indicating copy to clipboard operation
XrmDefinitelyTyped copied to clipboard

XrmQuery: Unhandled exception when odata endpoint responds with 204 (No content)

Open skfd opened this issue 6 years ago • 0 comments

Describe the bug

I have a simple query. So happens that odata endpoint returns a 204 (No content) Response, with empty body.

XrmQuery.retrieveRelated(x => x.yes_items, "abcd", x => x.yes_logoId)
                    .select(x => [x.yes_itemId])
                    .execute(e => {
                        console.log(e);
                    },
                        e => {
                            console.log(e);
                        });

request URL that is generated:

https://example.com/api/data/v8.0/yes_items(C290088F-13DE-E911-A302-00155D81CA84)/yes_logoId?$select=yes_itemId

Stack trace:

VM53538:1 Uncaught SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at o (dg.xrmquery.web.promise.min.js:formatted:591)
    at e.handleResponse (dg.xrmquery.web.promise.min.js:formatted:1045)
    at dg.xrmquery.web.promise.min.js:formatted:872
    at XMLHttpRequest.u.onreadystatechange (dg.xrmquery.web.promise.min.js:formatted:411)

To Reproduce Not sure how to reproduce, sorry.

Expected behavior I expect it to run success callback and return empty list or null. Or at least handle internal error and run error callback.

Environment

  • CRM/D365/CDS version: on-premise 9.0.5.5
  • Tool version: 4.3.1
  • UCI

skfd avatar Sep 30 '19 16:09 skfd