[Koha-devel] REST API not working in koha-testing-docker?

dcook at prosentient.com.au dcook at prosentient.com.au
Thu Mar 12 23:04:47 CET 2020


Hi all,

 

Thanks everyone for getting in touch.

 

Agustin: The API works for both OPAC and Admin. The /api path is just an alias to /usr/share/koha/api, so it’s the same thing regardless. 

 

David: There’s nothing wrong with my koha-testing-docker setup, but you made me think about trying different browsers, and I think it’s related to sessions. If I use an Incognito window or a different browser, I now get ‘{"error":"Authentication failure."}’ in a browser as expected. The original browser still gets ‘{"error":"Something went wrong, check the logs."}’.  (Although I think there might be issues with RESTPublicAPI still but I haven’t cared enough to investigate them.)

 

Tomas: Nope. This is using Plack. I think it’s probably related to browser sessions and cookies, which is why it was fine with curl. I didn’t think we used cookie auth anymore for the API, since it’s not mentioned in the wiki, but I recall the REST API is sometimes used within Koha now? So I guess that’s how it uses it? I have noticed that RESTBasicAuth doesn’t work with non-Plack, but that was unrelated to koha-testing-docker (except I have proved it in koha-testing-docker). 

 

I think I’m ironing out some of my issues with the REST API. There were lots of issues due to using CGI and newer versions of Mojolicious, but Ere has solved the latter. As for the former, that can be a job for another time. 

 

David Cook

Systems Librarian

Prosentient Systems

72/330 Wattle St

Ultimo, NSW 2007

Australia

 

Office: 02 9212 0899

Direct: 02 8005 0595

 

From: Koha-devel <koha-devel-bounces at lists.koha-community.org> On Behalf Of Agustin Moyano
Sent: Thursday, 12 March 2020 10:56 PM
To: Tomas Cohen Arazi <tomascohen at gmail.com>
Cc: Koha Devel <Koha-devel at lists.koha-community.org>
Subject: Re: [Koha-devel] REST API not working in koha-testing-docker?

 

Hi, 

 

I couldn't help to notice you are using port 8080.. in koha-testing-docker 8080 usually means OPAC, and 8081 is admin.. I do not know if it should work on both ports, but I usually use 8081.

 

Hope it helps

El jue., 12 de marzo de 2020 08:38, Tomas Cohen Arazi <tomascohen at gmail.com <mailto:tomascohen at gmail.com> > escribió:

I use Postman which has richer authentication options.

 

Dcook: this is related to not using plack, right?

 

El jue., 12 de marzo de 2020 06:50, David Nind <david.nind at gmail.com <mailto:david.nind at gmail.com> > escribió:

*  > 500 Internal Server error (with no obvious messages in the server logs other than a missing “Routing to a callback”)

a.	http://localhost:8080/api/v1/items
b.	http://localhost:8080/api/v1/patrons
c.	http://localhost:8080/api/v1/libraries

If I use 127.0.0.1 (rather than localhost) I get responses (on master).

 

If RESTPublicAPI is disabled I get {"error":"Something went wrong, check the logs."}

 

https://wiki.koha-community.org/wiki/Using_the_Koha_REST_API

 

Maybe something is wrong with your koha-testing-docker setup?

 

David Nind | david.nind at gmail.com <mailto:david.nind at gmail.com> 
PO Box 12367, Thorndon, Wellington, New Zealand 6144
m. +64 21 0537 847

 

 

On Thu, 12 Mar 2020 at 17:41, <dcook at prosentient.com.au <mailto:dcook at prosentient.com.au> > wrote:

Hi all,

 

I’m finally getting around to playing with the REST API, but it’s not quite working as expected.

 

In koha-testing-docker (with the latest koha-testing-docker git repo and Docker images as of this writing), I’m getting the following in the browser:

 

1.	200 OK

a.	http://localhost:8080/api/v1/.html
b.	http://localhost:8080/api/v1/ or http://localhost:8080/api/v1/.json 

2.	500 Internal Server error (with no obvious messages in the server logs other than a missing “Routing to a callback”)

a.	http://localhost:8080/api/v1/items
b.	http://localhost:8080/api/v1/patrons
c.	http://localhost:8080/api/v1/libraries

 

If I use “curl” or a Perl script, then I get a 401 error instead of a 500 error. (Although in Koha 19.11, I can get JSON results in either the browser or with curl for those endpoints, but that’s a whole other matter.)

 

RESTBasicAuth = 1 means I can use the API via curl, but still nothing via the browser. Which is fine I guess in practice but it’s not really what you’d expect. I often use browser requests to test out GET requests for APIs. 

 

I don’t really get how RESTPublicAPI works either. If it’s disabled, it says ‘{"error":"Configuration prevents the usage of this endpoint by unprivileged users"}’, but that doesn’t seem accurate, since disabling that system preference blocks the /public APIs in general, right? Even if you use a privileged user, it still doesn’t work.

 

Actually, even with RESTPublicAPI enabled, I can’t get the /public endpoints to work. I get errors like this ‘{"error":"Authorization failure. Missing required permission(s).","required_permissions":null}’. 

 

This email is getting a bit long and I think I have a million other API problems, so I might just work through one by one and open Bugzilla tickets as I go…

 

David Cook

Systems Librarian

Prosentient Systems

72/330 Wattle St

Ultimo, NSW 2007

Australia

 

Office: 02 9212 0899

Direct: 02 8005 0595

 

_______________________________________________
Koha-devel mailing list
Koha-devel at lists.koha-community.org <mailto:Koha-devel at lists.koha-community.org> 
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

_______________________________________________
Koha-devel mailing list
Koha-devel at lists.koha-community.org
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

_______________________________________________
Koha-devel mailing list
Koha-devel at lists.koha-community.org <mailto:Koha-devel at lists.koha-community.org> 
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.koha-community.org/pipermail/koha-devel/attachments/20200313/4f4d73d7/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 484 bytes
Desc: not available
URL: <http://lists.koha-community.org/pipermail/koha-devel/attachments/20200313/4f4d73d7/attachment-0001.sig>


More information about the Koha-devel mailing list