This is a migrated thread and some comments may be shown as answers.

XmlHttpRequest doesn't complete when fiddler is capturing traffic

4 Answers 373 Views
Fiddler Classic
This is a migrated thread and some comments may be shown as answers.
Paul
Top achievements
Rank 1
Paul asked on 02 Dec 2015, 02:50 PM

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

4 Answers, 1 is accepted

Sort by
0
Paul
Top achievements
Rank 1
answered on 02 Dec 2015, 02:59 PM

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.

 

0
Eric Lawrence
Telerik team
answered on 03 Dec 2015, 04:58 PM
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
0
Paul
Top achievements
Rank 1
answered on 06 Dec 2015, 09:37 PM

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.

0
Eric Lawrence
Telerik team
answered on 07 Dec 2015, 03:45 PM
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
Tags
Fiddler Classic
Asked by
Paul
Top achievements
Rank 1
Answers by
Paul
Top achievements
Rank 1
Eric Lawrence
Telerik team
Share this question
or