124

What does "Pending" mean under the status column in the "Network" tab of Google Chrome Developer window?

This happens when my page script issues a GET request whose response contains content-headers for downloading a CSV file:

Content-type: text/csv;
Content-Disposition: attachment; filename=myfile.csv

This works fine in FF and IE7, downloading a CSV file as expected and opening a file picker to save the file, but Chrome does nothing. I confirmed that the server responds to the request, so it appears that Chrome will not process the response.

Curiously, all works as expected if I type the URL into Chromes address bar and hit <enter>.

FYI: Chrome 10.0.648.204 on Windows XP

Stephen Ostermiller
  • 23,933
  • 14
  • 88
  • 109
Lawrence I. Siden
  • 9,191
  • 10
  • 43
  • 56
  • I have a similar issue with javascript files. jQuery libraries are not loading properly and causing problems. – Jack M. Apr 20 '11 at 14:56
  • Don't forget that extensions could be causing this issue - I had such a problem with including some 3rd party affiliate tracking pixel, the request was forever stuck as 'pending. Turned out I had forgotten to turn ad block off! – Andy Smith Jul 23 '12 at 11:32
  • 19
    Note that this question (the first sentence) still hasn't been answered. All answers below (as of today) are just "this is what caused it for me." The message is very generic and can be caused by a large number of issues. If I knew exactly what they were I would answer, but in general seems to mean that for some reason the communication is being prevented somewhere between the page and the server. By "page" I don't mean browser, browser extensions can cause this as mentioned elsewhere. – AlexMA Nov 26 '13 at 14:37
  • 1
    seeing this with the current Google Chrome Canary release (v43) but not the stable Chrome release (v40) with URLS from cloudfront – Simon_Weaver Feb 24 '15 at 22:50

14 Answers14

67

In my case, I found that the "pending" status was caused by the AdBlock extension. The image that I couldn't get to load had the word "ad" in the URL, so AdBlock kept it from loading.

Disabling AdBlock fixes this issue.

Renaming the file so that it doesn't contain "ad" in the URL also fixes it, and is obviously a better solution. Unless it's an advertisement, in which case you should leave it like that.

Animal451
  • 1,159
  • 10
  • 10
Robin Daugherty
  • 7,115
  • 4
  • 45
  • 59
  • 1
    I've seen the same thing in Chrome with the TamperMonkey extension installed. – sstn Sep 18 '15 at 12:24
  • 1
    @Robin Daugherty , the adblock extension is in server side or client side?, in client side in my case there is nothing. And pending status finish at between 1.8 min and 2.2 min... what could be wrong? poor network?. – Juan Ruiz de Castilla Oct 06 '15 at 14:37
  • 1
    It could be any other extension that blocks the file from loading. Try using an Incognito window, where all of your extensions are disabled. (Some extension might be enabled in Incognito mode, so you should check.) – Robin Daugherty Oct 06 '15 at 18:46
  • I was pulling my hair out trying to figure out why my development environment (Angular & Visual Studio) was so slow. Disabling uBlock did the trick. THANKS! – XVargas Oct 27 '15 at 18:25
  • 2
    Mine occurs in IE which does not support AdBlocker... :( This is an intermittent issue for me. – Jayson Jul 07 '16 at 05:50
  • Perhaps you should submit a question for your specific issue, since this question is specifically about Chrome. – Robin Daugherty Jul 08 '16 at 14:53
  • @RobinDaugherty I am using Magento 2 CMS, i am getting Status "Pending " issue, may i know what is my error. Screenshot : https://snag.gy/KdapDb.jpg – Gem May 16 '18 at 09:08
5

I also get this when using the HTTPS everywhere plugin. This plugin has a list of sites that also have https instead of http. So I assume before the actual request is made it is already being cancelled somehow.

So for example when I go to http://stackexchange.com, in Developer I first see a request with status (terminated). This request has some headers, but only the GET, User-Agent, and Accept. No response as well.

Then there is request to https://stackexchange.com with full headers etc.

So I assume it is used for requests that aren't sent.

nobody
  • 59
  • 1
  • 2
5

I had some problems with pending request for mp3 files. I had a list of mp3 files and one player to play them. If I picked a file that had already been downloaded, Chrome would block the request and show "pending request" in the network tab of the developer tools.

All versions of Chrome seem to be affected.

Here is a solution I found:

player[0].setAttribute('src','video.webm?dummy=' + Date.now());

You just add a dummy query string to the end of each url. This forces Chrome to download the file again.

Another example with popcorn player (using jquery) :

url = $(this).find('.url_song').attr('url');
pop = Popcorn.smart( "#player_",  url + '?i=' + Date.now());

This works for me. In fact, the resource is not stored in the cache system. This should also work in the same way for .csv files.

regular
  • 7,697
  • 1
  • 14
  • 19
Necko
  • 179
  • 2
  • 12
3

I had the same issue on OSX Mavericks, it turned out that Sophos anti-virus was blocking certain requests, once I uninstalled it the issue went away.

If you think that it might be caused by an extension one easy way to try and test this is to open chrome with the '--disable-extensions flag to see if it fixes the problem. If that doesn't fix it consider looking beyond the browser to see if any other application might be causing the problem, specifically security apps which can affect requests.

Santiago Angel
  • 1,127
  • 15
  • 19
2

The Network pending state on time, means your request is in progressing state. As soon as it responds the time will be updated with total elapsed time.

This picture shows the network call is in processing state(Pending) This picture shows the network call is in processing state(Pending)

This picture shows the time taken in processing by network call. This picture shows the time taken in processing by network call

  • 7
    I currently look at falsely-reported elapsed times. It would actually stay at pending for 4s, but would report 150ms. And that's relatively how long the server handling those requests reports (150ms that is). It's like something artificially is holding the request from resolving... – Nikolay Tsenkov Jul 31 '18 at 11:51
  • Is there a situation where it would be normal to see a pending status forever? I see this for a `ping` type request (g/collect) and am uncertain whether this is normal behavior or not. No ad blockers and I already eliminated debugging tools and VPN. Thanks! – Kreidol Jul 17 '21 at 00:04
2

I had a similar issue with application/json ajax calls. In ff/IE they were fine. In chrome in the Developer Network window Status was always (pending) because a different status code was being returned.

In my case I changed my Json response to send a HttpStatusCode of 200 then Chrome was fine and the Status Text changed to 200 OK.

For example using ASP.NET Web Api

 return new HttpResponseMessage(HttpStatusCode.OK ) {
            Content = request.Content
        };
Jafin
  • 4,153
  • 1
  • 40
  • 52
1

The fix, for me, was to add the following to the top of the php file which was being requested.

header("Cache-Control: no-cache,no-store");
Anonymous
  • 19
  • 1
1

Same problem with Chrome : I had in my html page the following code :

<body>
  ...
  <script src="http://myserver/lib/load.js"></script>
  ...
</body>

But the load.js was always in status pending when looking in the Network pannel.

I found a workaround using asynchronous load of load.js:

<body>
  ...
  <script>
    setTimeout(function(){
      var head, script;
      head = document.getElementsByTagName("head")[0];
      script = document.createElement("script");
      script.src = "http://myserver/lib/load.js";
      head.appendChild(script);
    }, 1);
  </script>
  ...
</body>

Now its working fine.

SebastienC
  • 11
  • 2
1

Encountered a similar issue recently. My App is in angular 11 and we have a form with some validators which have regex to validate the data. One of data element had a special character which the regex wasn't handling and it made the entire browser hung up. Infact, even though all network calls were successful with 200 Ok, chrome was not showing any response returned by the backend and was also showing the requests in Pending State when infact all network calls are successful, there was no console log errors or anything. Handling the regex fixed the issue. After i found the issue, i googled more about it. Here is more explanation about it. https://javascript.info/regexp-catastrophic-backtracking

Dharman
  • 30,962
  • 25
  • 85
  • 135
0

I came across this issue when I was debugging a local web application. The issue turned out to be AVG Antivirus and Firewall restrictions. I had to allow an exception through the firewall to get rid of the "Pending" status.

0

In my case, a simple restart to my browser (chrome) and it worked straight away afterwards like magic!


Little bit of context, I happen to refresh my frontend web page and straight away went onto making a changes to my API which led it to restart. During that instance, the frontend was making calls to API which led into "pending" due to that API is reloading. Browser at this point cached that pending state. For me to get out of it is either I set no-cache (which I didn't want to) or simply restart the browser, I chose the restart.

Dom
  • 580
  • 4
  • 26
0

A little background

I encountered such an issue when requesting an url in my Django project. The server is setup using Apache HTTP web server and basic auth for user authentication.

The url I was accessing required no authentication to access i.e. in my Apache config, I had set Require all granted on the url using the LocationMatch directive.

The issue

The url I was trying to access returned 200 status (in the Network tab in Chrome), but the static assets being used for styling of the requested webpage (css, javascript, font files etc.) associated with the request url were not loading and returned pending status.

In the meanwhile, the page loaded partially and still kept on loading. All this was happening in the presence of basic-auth dialog in browser, even though my url was granted all access.

What worked for me

Interestingly, as I entered my credentials and logged in, the requested page loaded all the static assets. This made it very clear to me that the static assets directory might NOT have the necessary access permissions.

Then, I granted the access to the static assets directory by updating my Apache config and then the requested url and the webpage loaded up fine (200 status) without any basic auth dialog OR pending status.

Somraj Chowdhury
  • 983
  • 1
  • 6
  • 14
-1

In my case, there's an update for Chrome that makes it won't load before you restart the browser. Cheers

-3

I encountered the same problem when I request certain images from page. I use JavaScript to set the src attribute of an img object and if the network is poor pending will be displayed in the network panel of chrome developer window. I think it's due to the poor network.

jz1108
  • 1
  • 4
    i have the same issue, but the images always come up right on IE or FF, so it's not the network. Also, it is intermittent. Wondered if you have any new insights – Lior Jun 17 '13 at 16:45
  • Same issue here. On FF those images load well. – svassr Oct 03 '14 at 16:12