I guess I already found the answer to this... you dont yet support TLS/SSL :( which pretty much removes the usefulness as a API servicewell if you ever do support tls/ssl is there a chance youll be adding support for the questions listed in the last post?
thanks for the great and informative replies.
it seems to me adding an additional layer such as reverse proxy is less than ideal, it adds another POF and more of a headache to deploy then just having a silkjs service that can be rapidly spun up on thousands of cloud instances.
i like silkjs better than node.js but right now without ssl/tls support i am more inclined to go with golang and possibly node.
though i am definitly going to be following this project as i think it has the ability to ne better than node.
on another note i see where you are coming from in regards to oauth... our web front end will be developed with extjs and mobile apps with extjs touch. the reason we were exploring the oauth idea is mainly windows 8 metro SSO as well as windows phone 8 and the paypal android pin auth method was appealing because if a phone is lost or stolen we would not want the thief to access billing information.
all that aside a pin is a nice speedy way to login instead of entering user name and pass each time which for secure passwords can be a pain from mobile devices. paypal app for android does this and so does the new login for windows 8...
thoughts?
My extent of js knowledge is hacking extjs and jquery... Really looking into getting started with silkjs, but.it would definitely.cut.back on learning curve and time to production if there was a boilerplate for developing rest api's with ssl and authentication with permissions system.
This would greatly help those of us coming from other languages like php
Many are looking for solutions like this because of obviouse performance issues with php and even more so with the.php frmework.
Silkjs just makes sense for high performance external api's and everyone will need a good.permission and authentication system to make that happen
I will be as much help as i can, i am new to the whole server side js idea.
So.i am facing a bit of a learning curve.
I think.this will make it easy for.people to get up and running with silkjs once.complete though. So yhey can focus o. Their apps and not something basic and prone to security mistakes like auth and permissions.
When i get some time i will draft up some design.goals, open to suggestions of coarse
I will be as much help as i can, i am new to the whole server side js idea.
So.i am facing a bit of a learning curve.
I think.this will make it easy for.people to get up and running with silkjs once.complete though. So yhey can focus o. Their apps and not something basic like
Not to start the rest flame war but honestly most implementations are not fully restfull which is one of the reasons for the many debates on the subject.
With that said it seems to be standard practice to use rpc as the communication interface for services in the backend. It is what we will use for our clusters of different services to communicate with one another.
But it is also seems to be a standard to expose your public facing api as a rest api.
I dont want to get into a debate here because it is hashed out in so many threads around the internet as it is, but there are a number of reasons for doing so.
Please explain how you handle versioning with your rpc method to prevent breaking possibly millions of third party written and outdated clients which you have no control over their codebase? How about discoverability?
Im not flaming just.curious if you have solved these issues which seem trivial with rest
function Server_action() {switch (req.data.method) {case 'listUsers':Json.success(Schema.list('Users', {}, function(o) {o = Schema.clean('Users', o);}));case 'editUser':var example = Json.decode(req.data.example);example.userId = example.userId || 0;Schema.putOne('Users', example);Json.success();case 'deleteUsers':var examples = Json.decode(req.data.examples);forEach(examples, function(example) {Schema.remove('Users',example);});Json.success();}}
Versioning with REST seams to be what everyone else is doing with their public api's it is less restrictive.
I have to wonder why almost every solution that was designed to be scalable uses REST on the public.facing.api and rpc on the backend.
Google, facebook, twitter
"The downside to.rpc would be that you will be defining your own semantics for operating on resources (which your client developers will need to learn) when you could use the operations that already exist.HTTP defines the operations/actions/verbs that can be used. If you use this, you can provide a uniform interface that api users can call without being forced to learn your new plans.Doing so would allow you to achieve one of the helpful constraints in REST."
Skynet in golang which is designed to help developers quickly get up to speed with developing scalable, self healing, applications with automatic service discovery and recovery uses rpc on the backend for setvice to service communication but yet they suggest using REST for the public facing api
https://github.com/bketelsen/skynet
Like i said we are not.interested in debating which is better, we are only interested in helping.create a boilerplatr for silkjs whoch others can quickly get upbto speed for their REST api's
It is okay that you like rpc, to each is their own, but there are plenty who will want a REST api, its not like i am suggesting a boilerplate that is only useful to a subset of.people, on the contrary i am suggesting one that is useful to the largest group of.people.
Here you can see one is available for nodejs http://mcavage.github.com/node-restify/
--
You received this message because you are subscribed to the Google Groups "SilkJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to silkjs+un...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.