…all this building of extensions for Opera. Today I wrote a few ASP.NET pages and then an extension for Opera that was supposed to send data to those ASP.NET pages, which would then process it further. It didn’t work, and on top of that there were zero debugging options, no compilation, and the only thing I had to go on was a single error that Opera threw at me. Plus, every time I had to go through this whole merry-go-round:
- Remove the old extension from Opera
- Create the
*.oexfile. I did that in 7-zip, so every time I had to rename thezipextension tooex. - Install the extension into Opera
- Select the extension for which I want to turn on the console (as luck would have it, it was right at the bottom, so I had to go through dozens of tabs)
- Switch to the tab with gc.com
- Click the extension icon to start sending
- Bang my head against the monitor because it threw an error at me yet again (most often
DOMException: NETWORK_ERR, since I was mostly trying to send it via$.ajax())
In the end I concluded that I can’t start building something I don’t know and that I first have to get to know it a little.
OK, so I ran that sending script normally in the browser. Everything was fine. I tried a “different” method (in quotes because jQuery surely uses XMLHttpRequest internally too), namely XMLHttpRequest, but same thing: normally in the browser, yes, in the extension, no.
I even uploaded it to my hosting and ran it from there, and that worked too. And I don’t have the time to study other Opera extensions that send data somewhere :-(. I can still try to find out whether there’s an API in opera.extensions for sending to another domain. But I don’t see much hope in that.
In the end I’ll have to build the extension for Chrome ;(. There probably won’t be many caches today, because a storm is starting up out there again, unless I risk it. The next option after Chrome is to build the extension for IE (where I could write the whole thing in C# alone).