XmlHttpRequest doesn't complete when fiddler is capturing traffic

5 posts, 0 answers
  1. Paul
    Paul avatar
    3 posts
    Member since:
    Dec 2015

    Posted 02 Dec 2015 Link to this post

    I'm using Angular + BreezeJS to talk to an ASP.NET WebAPI which supports http batch requests. When Fiddler is not capturing traffic, my batched requests complete, i.e. if I look at the XmlHttpRequests readystate I can see they change to a value of 4. When Fiddler is capturing traffic, the readystate never goes beyond 3 and so the responses aren't processed. Any help would be greatly appreciated

     Here's the request:

    POST http://localhost:63885/api/batch HTTP/1.1
    X-Breeze: true
    X-Requested-With: XMLHttpRequest
    Accept: multipart/mixed
    Content-Type: multipart/mixed;boundary=batch_4e3c-3e36-31c2
    Referer: http://localhost:63885/confirm-profile
    Accept-Language: en-ZA,en;q=0.5
    Accept-Encoding: gzip, deflate
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
    Content-Length: 1584
    Host: localhost:63885
    Connection: Keep-Alive
    Pragma: no-cache


    --batch_4e3c-3e36-31c2
    Content-Type: multipart/mixed; boundary=changeset_1c4c-ba7e-a1a6

    --changeset_1c4c-ba7e-a1a6
    Content-Type: application/http
    Content-Transfer-Encoding: binary

    POST http://localhost:63885/api/users HTTP/1.1
    Content-ID: 1
    X-Breeze: true
    Accept: application/json;q=0.5, */*;q=0.1
    Content-Type: application/json

    {"Id":"10b2c6f7-78b9-49c1-8d34-e74c83ebe74c","LastSession":null,"IsSiteAdministrator":false,"Anonymous":false,"ArrowSetId":null,"Category":null,"ContactNumber":"**********","CurrentUserProductId":null,"DateOfBirth":null,"Email":"paul@*********","EmailDayOfWeek":null,"EmailFrequency":"1","EmailStart":null,"ExpiryDate":null,"ForceMix":false,"Gender":null,"HasAcceptedDisclaimer":false,"HasAcceptedTerms":false,"HasTabletAccess":false,"HideLeaderboard":false,"HideReports":false,"IconSetId":null,"IsApproved":false,"LanguageCode":null,"LastActivation":null,"LastEmailDate":null,"LocationId":null,"LogoId":null,"LowPerformance":false,"MaximumLevel":0,"MaximumTrainingTime":null,"Name":"REBMBBMGBDJM","OverrideTeamEmailSettings":false,"ParentId":null,"Password":"***********","ReportType":null,"SendAssessmentEmail":false,"SendExpiryEmail":false,"SportId":null,"Surname":"MEBMBBMGBDJM","TeamId":null,"TimeZoneId":null,"TimeZoneOffset":0,"TrainingFrequency":null,"TrainingSettingsOverrideTeam":false,"TrainingTime":0,"Username":"1011051370","CreatedById":null,"DateCreated":null,"DateDeleted":null,"DateModified":null,"DeletedById":null,"ModifiedById":null,"IsDeleted":false}
    --changeset_1c4c-ba7e-a1a6--

    --batch_4e3c-3e36-31c2--

    And the response

      HTTP/1.1 202 Accepted
    Cache-Control: no-cache
    Pragma: no-cache
    Content-Type: multipart/mixed; boundary=batchresponse_ff4247ba-0255-4278-bef1-13581b91ca5a
    Expires: -1
    Server: Microsoft-IIS/10.0
    DataServiceVersion: 3.0
    X-SourceFiles: =?UTF-8?B?QzpcUHJvamVjdHNcZXllZ3ltLXZpdGFsaXR5XFNvbHV0aW9uc1xFeWVHeW0uV2ViLk12Y1xhcGlcYmF0Y2g=?=
    X-Powered-By: ASP.NET
    Access-Control-Allow-Origin: *
    Access-Control-Allow-Headers: Content-Type
    Access-Control-Allow-Credentials: true
    Access-Control-Allow-Methods: GET, POST, PUT, PATCH, DELETE, OPTIONS
    Date: Wed, 02 Dec 2015 14:34:08 GMT
    Transfer-Encoding: chunked

    7f7
    --batchresponse_ff4247ba-0255-4278-bef1-13581b91ca5a
    Content-Type: multipart/mixed; boundary=changesetresponse_d7c9deab-73ce-4df0-991a-ea8baad0a9dd

    --changesetresponse_d7c9deab-73ce-4df0-991a-ea8baad0a9dd
    Content-Type: application/http
    Content-Transfer-Encoding: binary

    HTTP/1.1 201 Created
    Location: http://localhost:63885/api/users/10b2c6f7-78b9-49c1-8d34-e74c83ebe74c
    Content-ID: 1
    Content-Type: application/json; charset=utf-8

    {"LastSession":null,"IsSiteAdministrator":false,"Anonymous":false,"ArrowSet":null,"ArrowSetId":null,"Assessments":[],"Category":null,"Children":[],"ContactNumber":"********","CurrentUserProduct":null,"CurrentUserProductId":null,"DateOfBirth":null,"Email":"paul@**********","EmailDayOfWeek":null,"EmailFrequency":1,"EmailStart":0,"ExpiryDate":null,"ForceMix":false,"Gender":0,"HasAcceptedDisclaimer":false,"HasAcceptedTerms":false,"HasTabletAccess":false,"HideLeaderboard":false,"HideReports":false,"IconSet":null,"IconSetId":null,"IsApproved":false,"LanguageCode":null,"LastActivation":"2015-12-02T14:34:08.000Z","LastEmailDate":null,"Location":null,"LocationId":null,"Logo":null,"LogoId":null,"LowPerformance":false,"MaximumLevel":0,"MaximumTrainingTime":null,"Name":"REBMBBMGBDJM","OverrideTeamEmailSettings":false,"Parent":null,"ParentId":null,"Password":"**********","Products":[],"ReportType":0,"Roles":[],"Scores":[],"SendAssessmentEmail":false,"SendExpiryEmail":false,"Sport":null,"SportId":null,"Surname":"MEBMBBMGBDJM","Team":null,"TeamId":null,"TimeZoneId":null,"TimeZoneOffset":0.0,"TrainingFrequency":0,"TrainingSettingsOverrideTeam":false,"TrainingTime":0,"Username":"1011051370","CreatedById":"00000000-0000-0000-0000-000000000000","DateCreated":"2015-12-02T14:34:08.000Z","DateDeleted":null,"DateModified":null,"DeletedById":null,"ModifiedById":null,"IsDeleted":false,"Id":"10b2c6f7-78b9-49c1-8d34-e74c83ebe74c","Links":[],"__metadata":{"type":"User"}}
    --changesetresponse_d7c9deab-73ce-4df0-991a-ea8baad0a9dd--
    --batchresponse_ff4247ba-0255-4278-bef1-13581b91ca5a--

    0

  2. Paul
    Paul avatar
    3 posts
    Member since:
    Dec 2015

    Posted 02 Dec 2015 Link to this post

    Sorry, forgot to add that this is only a recent occurrence: up until about a week ago, batched requests were working perfectly. I been back through my revision history to double check that I haven't changed anything in my breeze adapter or my batch handler.

     

  3. Eric Lawrence
    Admin
    Eric Lawrence avatar
    833 posts

    Posted 03 Dec 2015 Link to this post

    Hi, Paul--

    Getting to state 3 implies that the object sent the request but it hasn't received the response. Has the response come back in Fiddler? Does the object ever enter the Error state?

    Your response text is a bit odd-- am I correct to interpret it as you sending *multiple* HTTP response messages within a single chunked response?

    The easiest way for me to see what you're seeing is for you to send me a SAZ file of the traffic (File > Save All Sessions, Help > Send Feedback) so that I can better understand the situation.

    Regards,
    Eric Lawrence
    Telerik
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
  4. Paul
    Paul avatar
    3 posts
    Member since:
    Dec 2015

    Posted 06 Dec 2015 Link to this post

    Hi Eric,

    Can you let me have an address which I can send the SAZ to?

    I'm using OData request batching to handle breezejs change sets and wrap multiple related entity changes within a transaction scope on the server; it also helps reduce the chatiness of the client when making changes to a large object graph.

    Thanks,

    P.

  5. Eric Lawrence
    Admin
    Eric Lawrence avatar
    833 posts

    Posted 07 Dec 2015 Link to this post

    Hi, Paul--

    Help > Send Feedback should open a new email to fiddler@telerik{dot}com

    Regards,
    Eric Lawrence
    Telerik
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
Back to Top