To see this bug in action, fire up Fiddler2 or Charles or whatever and
take a look at the requests for this page when using Chrome, Safari,
or IE: http://www.fatkidproductions.com/goog-ajax-search-api/broken.html
Now take a look at the requests for this page:
http://www.fatkidproductions.com/goog-ajax-search-api/working.html
Notice how in the first URL that a duplicate request is issued in
WebKit and a request to the containing dir is issued in IE? If you
take a look at the source, you'll see that the problem is definitely
caused by the Google AJAX Search API as it's the only thing on the
page.
Please fix. This is causing havoc for us right now.
The screenshot was taken with IE requesting broken.html and
working.html. Requests 1 - 4 are for broken.html. Requests 15 - 16 are
for working.html.
Again, I strongly suspect that this issue is caused by an empty src
property of an Image object somewhere in the code. I haven't debugged
it at all though as it'd just be a waste of my time and as I'm certain
it'd just be easier to find this problem by looking at the previous
commits before the deploy.
Jeremy R. Geerdes
Effective website design & development
Des Moines, IA
For more information or a project quote:
http://jgeerdes.home.mchsi.com
jrge...@gmail.com
If you're in the Des Moines, IA, area, check out Debra Heights Wesleyan Church!
> --
> You received this message because you are subscribed to the Google Groups "Google AJAX APIs" group.
> To post to this group, send email to google-ajax...@googlegroups.com.
> To unsubscribe from this group, send email to google-ajax-searc...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/google-ajax-search-api?hl=en.
>
1) In IE, an extra request is issued for the directory containing the
file.
2) In WebKit, an extra request is issued for the page hosting the
malfunctioning script or img tag.
3) In Firefox 3.6, no extra requests are issued.
You can verify this using Charles or Fiddler. Regardless, when I do
have the page with the AJAX search API on it, the second request is
issued. As soon as the AJAX search API is removed, the stray request
is never issued and our servers actually have some room breathe again
since the load practically drops by half! You can see this if you look
at the source for the two pages; the only difference between the two
is that the API search loader is commented out.
This only started happening in the last few days. I'm really hoping
that a Google engineer will take notice of it and fix it soon!
Andrew
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://
www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Generic Test Page</title>
<style type="text/css">
<!--
* { color:inherit; background-color:inherit; border-
color:inherit; }
html { color:#FFFFFF; background-color:#330000; }
-->
</style>
</head>
<body
onload="javascript:alert(document.getElementById('NullSrc').src);">
<h1>Generic Test Page</h1>
<img src="" id="NullSrc" alt="Empty image src property test"
title="Empty image src property test">
</body>
</html>
When I run this on the browsers I have available for testing, FF3
gives you the page URL, IE the directory of the page, and only Opera 9
correctly gives you an empty string. Note that, AFAICT, FF and IE are
actually *replacing* the empyty URL with the values given above.
Thank you for reporting this. Would you mind filing this in our issue
tracker as well?
http://code.google.com/p/google-ajax-apis/issues/entry
I will also reply on this thread with further updates.
Thank you,
Jeff
On Mar 26, 6:47 pm, CharlesHarrison <c.e.m.harri...@macfh.co.uk>
wrote:
http://code.google.com/p/google-ajax-apis/issues/detail?id=420
My apologies for the somewhat alarmist subject of this post.
Considering that it's doubling the requests to our servers, I really
just wanted a Google employee to take notice so that this didn't get
lost.
Andrew
First, change all relative URIs to absolute URIs, throughout the
page(s) where you load the search API. Then add a BASE element
specifying a nonexistent domain.
Example:
HTML: <base href="http://nonexistent-domain.com/">
XHTML: <base href="http://nonexistent-domain.com/" />
Place that element in the HEAD section (prior to any other element
therein that refers to an external URI). Check again to make sure
that all URIs specified in the document are absolute (e.g.
"http://...").
Test the modified page(s) in Webkit, IE, and any other type of browser
where you previously observed the extra requests.
(Disclaimer: This workaround is experimental. I don't know if
specifying a bogus base might cause unwanted side-effects. In any
case, this obviously isn't the proper or intended usage of the base
element. Use this workaround entirely at your own risk, and only if
you consider it absolutely necessary to suppress the extra requests
while you wait for the API bug to be fixed.)
-- omr
http://code.jquery.com/jquery-1.4.2.js
Lines 5091-4:
"""
// Use insertBefore instead of appendChild to circumvent an IE6 bug.
// This arises when a base node is used (#2709 and #4378).
head.insertBefore( script, head.firstChild );
"""
I know that Google use dynamic script tag insertion in some of their
code, so unnecessary use of a base tag may not be advisable.
Thanks again for the issue report and for your patience with this
issue. We've made the necessary changes and you should no longer see
these additional requests. Apologies again for the inconvenience.
Happy coding,
Jeff
On Mar 28, 5:21 am, CharlesHarrison <c.e.m.harri...@macfh.co.uk>
wrote: