Hi Sven,
I put some code on GitHub.
There is no working example yet, but all one needs.
I have to get back into Amber and their current way to integrate
external libs.
As soon as I have that working again I will add a Version 1.2 petstore
example.
https://github.com/HeSe/amber-swaggerJs
Most important part is the SwaggerApi class and the methods build and
initializeSwaggerInterfaceFor:
They import the hosted swagger spec and build the JS-Api Interface
object one can use in Amber,.... there is really not much to it.
Sebastian
Am 23.06.2015 um 14:39 schrieb Sven Van Caekenberghe:
On 23 Jun 2015, at 22:55, Sebastian Heidbrink <[email protected]> wrote:
Hi Sergio,
Zinc-REST is part of the Zinc repository and a fork for Gemstone can be found
here:
https://github.com/GsDevKit/zinc/tree/gs_master/repository/Zinc-REST.package
Most part is to implement the code that generates the Swagger specification for
your ZnRESTCall subclasses. But it is no vodoo.
It becomes more complexe if you would actually like to use the swagger
specification on the server site to do request data validation and error
handling,.... I currently use Swagger only for documentation purposes.
Amber limitations? Not really.
It took me some time to figure out how to configure my servers to cope with
CORS for the Swagger-UI and my current jsonwebtocken security mechanism is not
supported by the SwaggerUI and I had to allow insecure access for the Swagger
UI to the Gemstone server.
The Amber Swagger-JS integration works quite nicely.
I did not publish the code on Github because the integration is so tiny. I can
send it to you if you like.
Or no,... let me prepare a demo based on the Swagger petshop demo and I will
put it online.
Might take a day or two until I find some time.
Yes please write something about this, this is interesting for many people.
Sebastian
Am 23.06.2015 um 13:05 schrieb sergio_101:
hey, sebastian.. this looks great! this looks like what i am after..
did you run into any problems or limitations using Amber as a front end? I have
not tried Amber yet, so this might be the right time to give it a shot.. where
did you find zinc-rest? a quick search turns up references to it.. should i be
able to just install it via my image?
andrew - i thought about using the seaside rest add on, but seaside seems to be
alot of overhead just to run a rest server..
mariano - i am thinking about using api token..
On Tue, Jun 23, 2015 at 3:13 PM Sebastian Heidbrink <[email protected]> wrote:
Am 23.06.2015 um 11:40 schrieb sergio_101:
I have been a project coming up that I really onlyneed a restful API on.
The front end will be first built on a mobile device(iOS )then back on
possibly android, with a very stripped down web application.
i would like to use pharo/gemstones as the database.
is there a project out there that allows for such restful API development in
pharo land? This would be so fun!
thanks
I am not so sure what you mean exactly but this is my stack.
I use pure Zinc-REST on the Gemstone side and the REST API is described in
Swagger-Spec from within Gmestone.
Clients are VBA, Amber and Pharo and they utilize the Swagger API spec to
access the server.
Works pretty well and is much more preformant than the intial Pharo MongoDB
backend I initially used.
Have a look into http://smalltalkhub.com/#!/~HeSe/Swagger-Spec
There you can find most of the needed Swagger implementation some minor details
like type constants are missing.
Once your Gemstoneserver knows how to host his Swagger-Spec you can host it via
https://github.com/swagger-api/swagger-ui
This saves a lot of explaning time to client developers.
Sebastian