[annotator-dev] How to use AnnotateIt.org with Store plugin

Rufus Pollock rufus.pollock at okfn.org
Wed Mar 14 10:37:31 UTC 2012


Great work Nick. I remember much fun and games with the original CORS
work and know how tricky this can sometimes be ...

Rufus

On 13 March 2012 15:48, Nick Stenning <nick at whiteink.com> wrote:
> After a great deal of swearing on my part, I've finally worked out
> that Chrome has recently become a lot pickier about CORS requests.
>
> In particular, it'll "Cancel" the request, with no particular warning
> or error message, if the response doesn't have the Content-Length
> header set. Or, more commonly, it does have Content-Length set but the
> CORS headers aren't configured to expose that header.
>
> Hopefully this issue should now be fixed.
>
> Best wishes, and apologies for all the hassle, with a raised eyebrow
> towards the Chrome team.
>
> -N
>
> On Sun, Mar 11, 2012 at 17:58, Kunal Kadakia <kadakiakunal at gmail.com> wrote:
>> Nick,
>> I am sorry I forgot to mention the version # of Google Chrome. It is
>> 17.0.963.79 and it is up to date.
>>
>> - Kunal
>>
>> On Sun, Mar 11, 2012 at 6:55 AM, Nick Stenning <nick at whiteink.com> wrote:
>>> Kunal,
>>>
>>> It's going be really hard to help you unless you help me out here.
>>>
>>>> What browser (and what version of that browser) are you using?
>>>
>>> Best wishes,
>>> Nick
>>>
>>> On Sun, Mar 11, 2012 at 07:01, Kunal Kadakia <kadakiakunal at gmail.com> wrote:
>>>> I keep on getting this error in Google Chrome:
>>>>
>>>> XMLHttpRequest cannot load http://annotateit.org/api/token. Origin
>>>> http:/localhost is not allowed by Access-Control-Allow-Origin.
>>>>
>>>> I read issues seen in Google Chrome when doing CORS via localhost. So,
>>>> I even tried hosting the files on a different server and access them
>>>> as: http://websitename/index.html. But, I still receive the same
>>>> error.
>>>>
>>>> - Kunal
>>>>
>>>> On Wed, Mar 7, 2012 at 5:57 AM, Nick Stenning <nick at whiteink.com> wrote:
>>>>>
>>>>> Hi Kunal,
>>>>>
>>>>> You were not expecting such complications, and such complications are
>>>>> not intended. That said, I just copied and pasted your example code,
>>>>> and it works, unchanged.
>>>>>
>>>>> I can only assume that you are using an older browser that doesn't
>>>>> correctly send auth credentials to AnnotateIt as it is requested to
>>>>> do. What browser (and what version of that browser) are you using?
>>>>>
>>>>> Best,
>>>>> Nick
>>>>>
>>>>> On Wed, Mar 7, 2012 at 05:46, Kunal Kadakia <kadakiakunal at gmail.com> wrote:
>>>>> > Hi Nick,
>>>>> > I logged into my www.annotateit.org. I also clicked on "AnnotateIt"
>>>>> > button on My Account page. I see a message at the top saying
>>>>> > "Annotator is ready!".
>>>>> >
>>>>> > When I open my simple HTML page which is hosted on XAMPP, I still
>>>>> > receive the following errors:
>>>>> >
>>>>> > GET http://annotateit.org/api/token 401 (UNAUTHORIZED)
>>>>> > annotator-full.min.js:1Couldn't get auth token: UNAUTHORIZED
>>>>> >
>>>>> > I was not expected to receive such complications to start off with a
>>>>> > simple example with annotations being stored at annotateit.org.
>>>>> >
>>>>> > Here my my code snippet:
>>>>> >
>>>>> > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
>>>>> > TRANSITIONAL//EN"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
>>>>> > TRANSITIONAL//EN">
>>>>> > <html>
>>>>> > <head>
>>>>> > <title>Test Annotator 1.1.0</title>
>>>>> > <script type="text/javascript" src="./jquery-1.7.1.min.js"></script>
>>>>> > <script type="text/javascript"
>>>>> > src="annotator-full-v1.1.0/annotator-full.min.js"></script>
>>>>> > <link rel="stylesheet" href="annotator-full-v1.1.0/annotator.min.css" />
>>>>> > </head>
>>>>> > <body>
>>>>> > <div id="content">
>>>>> > SAMPLE TEXT
>>>>> > </div>
>>>>> > <script type="text/javascript">
>>>>> > jQuery(function ($) {
>>>>> >        var content = $('#content').annotator().annotator('setupPlugins');
>>>>> > });
>>>>> > </script>
>>>>> > </body>
>>>>> > </html>
>>>>> >
>>>>> > Thanks
>>>>> > Kunal
>>>>> >
>>>>> > On Tue, Mar 6, 2012 at 4:35 AM, Nick Stenning <nick at whiteink.com> wrote:
>>>>> >> Well, you need to be logged into AnnotateIt. You should see a
>>>>> >> notification telling you this, but it seems the filter bar hides it.
>>>>> >>
>>>>> >> Either way, the solution is simply to log into AnnotateIt.
>>>>> >>
>>>>> >> -N
>>>>> >>
>>>>> >> On Tue, Mar 6, 2012 at 04:48, Kunal Kadakia <kadakiakunal at gmail.com> wrote:
>>>>> >>> Nick,
>>>>> >>> I am using the following code snippet:
>>>>> >>>
>>>>> >>> jQuery(function ($) {
>>>>> >>>        var content = $('#content').annotator().annotator('setupPlugins');
>>>>> >>> });
>>>>> >>>
>>>>> >>> I am getting the following 2 errors in Google Chrome. I have
>>>>> >>> developing it on XAMPP on Mac OS X:
>>>>> >>>
>>>>> >>> 1)
>>>>> >>> GET http://annotateit.org/api/token 401 (UNAUTHORIZED)
>>>>> >>> f.support.ajax.f.ajaxTransport.send (jquery-1.7.1.min.js:4)
>>>>> >>> f.extend.ajax (jquery-1.7.1.min.js:4)
>>>>> >>> b.Plugin.Auth.d.requestToken (annotator-full.min.js:1)
>>>>> >>> d (annotator-full.min.js:1)
>>>>> >>> c.addPlugin (annotator-full.min.js:1)
>>>>> >>> b.setupPlugins (annotator-full.min.js:2)
>>>>> >>> a.plugin.jQuery.fn.(anonymous function) (annotator-full.min.js:1)
>>>>> >>> e.extend.each (jquery-1.7.1.min.js:2)
>>>>> >>> e.fn.e.each (jquery-1.7.1.min.js:2)
>>>>> >>> a.plugin.jQuery.fn.(anonymous function) (annotator-full.min.js:1)
>>>>> >>> (anonymous function) (index.html:17)
>>>>> >>> f.Callbacks.n (jquery-1.7.1.min.js:2)
>>>>> >>> f.Callbacks.o.fireWith (jquery-1.7.1.min.js:2)
>>>>> >>> e.extend.ready (jquery-1.7.1.min.js:2)
>>>>> >>> c.addEventListener.B (jquery-1.7.1.min.js:2)
>>>>> >>>
>>>>> >>> 2)
>>>>> >>> Couldn't get auth token: UNAUTHORIZED (annotator-full.min.js:1)
>>>>> >>> b.Plugin.Auth.d.requestToken.a.ajax.done.fail.always.c.requestInProgress
>>>>> >>> (annotator-full.min.js:1)
>>>>> >>> f.Callbacks.n (jquery-1.7.1.min.js:2)
>>>>> >>> f.Callbacks.o.fireWith (jquery-1.7.1.min.js:2)
>>>>> >>> w (jquery-1.7.1.min.js:4)
>>>>> >>> f.support.ajax.f.ajaxTransport.send.d (jquery-1.7.1.min.js:4)
>>>>> >>>
>>>>> >>> Should I be passing any authentication tokens?
>>>>> >>>
>>>>> >>> I would appreciate if atleast I could get this working.
>>>>> >>>
>>>>> >>> Thanks
>>>>> >>> Kunal
>>>>> >>>
>>>>> >>>
>>>>> >>> On Mon, Mar 5, 2012 at 1:33 PM, Nick Stenning <nick at whiteink.com> wrote:
>>>>> >>>> That's exactly what the snippet I've given you does! Just try it. For
>>>>> >>>> further details of what the setupPlugins function does, see the
>>>>> >>>> following:
>>>>> >>>>
>>>>> >>>>  https://github.com/okfn/annotator/blob/master/src/plugin/kitchensink.coffee
>>>>> >>>>
>>>>> >>>> -N
>>>>> >>>>
>>>>> >>>> On Mon, Mar 5, 2012 at 18:30, Kunal Kadakia <kadakiakunal at gmail.com> wrote:
>>>>> >>>>> Yes, Nick! But, would the default setupPlugins store annotations on
>>>>> >>>>> annotateit.org. And, if so, how can I have them stored in my personal
>>>>> >>>>> annotateit.org account?
>>>>> >>>>>
>>>>> >>>>> Thanks
>>>>> >>>>> Kunal
>>>>> >>>>>
>>>>> >>>>> On Mon, Mar 5, 2012 at 1:27 PM, Nick Stenning <nick at whiteink.com> wrote:
>>>>> >>>>>> On Mon, Mar 5, 2012 at 18:07, Kunal Kadakia <kadakiakunal at gmail.com> wrote:
>>>>> >>>>>>> Hi dev-team,
>>>>> >>>>>>>
>>>>> >>>>>>> [...snip...]
>>>>> >>>>>>>
>>>>> >>>>>>> It would be good if someone could supply a working code snippet on how
>>>>> >>>>>>> to store annotations in my annotateit.org account. It would highly be
>>>>> >>>>>>> appreciated, as I have spent significant time in finding it.
>>>>> >>>>>>
>>>>> >>>>>> Hi Kunal,
>>>>> >>>>>>
>>>>> >>>>>> Did you see the two-liner on the front page of AnnotateIt.org =).
>>>>> >>>>>>
>>>>> >>>>>> (For reference, it's:
>>>>> >>>>>>
>>>>> >>>>>>    $('#content').annotator()
>>>>> >>>>>>                 .annotator('setupPlugins');
>>>>> >>>>>> )
>>>>> >>>>>>
>>>>> >>>>>> -N
>
> _______________________________________________
> annotator-dev mailing list
> annotator-dev at lists.okfn.org
> http://lists.okfn.org/mailman/listinfo/annotator-dev



-- 
Co-Founder, Open Knowledge Foundation
Promoting Open Knowledge in a Digital Age
http://www.okfn.org/ - http://blog.okfn.org/




More information about the annotator-dev mailing list