React Native Server - Is Custom Routes / Endpoints possible? - facebook

I'm new to mobile development and I know there are some fundamentally different things than the web, so I'm trying to understand RN's server. How does it work? I can't even tell if it is a node server when I look at the source code. What kind of server is it? Does anyone have any resources or high level knowledge of RN's Sever that they could please explain to me?
I'm also wondering if it's possible to create custom routes and endpoints like an express server within React Native. I realize RN doesn't use express. Does anyone have any experience doing that?
The source code is here and here

This module is an internal tool and I think it should keep that usage.
If you look at the tests file here, you can see that this server is a part of the Packager and is used to serve several elements:
Bundle JS
Assets
Tools for debugging and hot reload
I don't think it's a good idea to try to use this code inside your React Native app.

Related

Start with web API/REST API

I am in the process of creating an app (cross-platform with Ionic framework) and during my research about app with this framework I found the one created for HabitRPG and it is using an API to retrieve data, it totally suits my app as well, but I don't know where to start to create an API nor what to use.
I allready did some quick test with Spring, NodeJS and Symfony (with FOS) but I'm looking for something really easy to use and to setup but still to have a lot of flexibility (like manage security, users, and data visibility).
Is there a specific technology easy enough to start with ?
If you want to create a Web API and host it, you can perhaps have the look at APISpark (http://restlet.com/products/apispark/). It's an online plateform that allows to design your APIs following REST principles and then host them. The data are also managed by the platform.
Hope it helps.
Thierry

A good way to structure AngularJS client code with Play 2.1 as backend

I own a Play 2.1 application.
Initially, I used the default template mechanisms from Play 2.1 until I .. learned AngularJS.
Now, I clearly want my client side to be an AngularJS app.
However, while surfing the net, I find there are no clear way to achieve it:
Letting Play behave as a simple RESTful application (deleting the view folder) and making a totally distinct project to build the view (AngularJS app initialized by grunt.js).
Advantage: Likely to be less messy, and front and backend teams would work easily separately.
Drawback: Need another HTTP server for the AngularJS app.
Try to totally integrate AngularJS app with the traditional Play's workflow.
Drawback: With a pretty complex framework like AngularJS, it would lead to a confusion of templates managementfor instance : scala.html (for Play) / tpl.html (for Angular) ... => messy.
Making a custom folder within the play project but distinct from the initial folders created by the Play scaffolding. Let's call it myangularview instead of traditional view for instance. Then, publish static contents generated by grunt.js into the Play's public folder, in order to be reachable from browser through Play's routing.
Advantage: SRP between components is still fairly respected and no need to use another light HTTP server for the client-side like in 1.
I pointed out my own views of advantage and drawbacks.
What would be a great way to achieve the combination of Play with Angular?
Yes, I'm answering to my own question :)
I came across this way of doing:
http://jeff.konowit.ch/posts/yeoman-rails-angular/
Rails?? No matter the framework is, the need remains exactly same.
It advocates a real separation between APIs (backend side), and front-end side (in this case making AJAX calls to backend server).
Thus, what I've learned is:
During development phase, a developer would use two servers: localhost on two distinct ports.
During production phase, the front-end elements would be encompassed into the whole backend side (the article would deal with a kind public folder, aiming to serve static contents: HTML, angular templates (for instance), CSS etc... Advantage? => dealing with a one and unique serving server's APIs exposition as well as static assets for the UI.
With this organization, some tools like Yeoman would be able to bring some really awesome handy things to developers like for instance: the livereload feature. :):)
Of course, during development phase, we end up with two different domains, (localhost:3000 and localhost:9000 for instance) causing issues for traditional ajax requests. Then, as the article points out, a proxy may be really useful.
I really find this whole practice very elegant and pleasant to work with.
There was an interesting discussion on the play mailinglist a couple of days ago about frontend-stack/solution, could be something in it for you, quite some people using angular it seems: https://groups.google.com/forum/#!searchin/play-framework/frontend/play-framework/IKdOowvRH0s/tQsD9zp--5oJ

OrientDB REST API available on same web-app as embedded server (using a relative path)

I'm writing a web-app for distribution, with an embedded OrientDB, and was wondering if you could give me some clues on how to also bundle OrientDB Studio, without having to use the built-in web server. (the reason for this is that a lot of hosting providers don't allow to use other ports so wouldn't be able to make studio available just by deploying the app)
The idea is to make OrientDB's REST API available from a relative path in my web-app, so that studio can communicate with it, but I have no clue on where to start looking. First I need to know if it is even possible to make the REST protocol available if not using the provided listeners on the built-in web server, then if it would be possible to point studio operations to a relative address.
This seems like a problem that probably someone else has came across, so if not with OrientDB, maybe experience with a similar problem using other embeddable DBs might help me...
you could create a reverse proxy in Apache to bind the port 80 under the address "/orientdb" for example to -> localhost:2480.

Making a webserver using jsp and java

Using Google App Engine SDK:
webpage: http://hwsejk.appspot.com/
I'm trying to make a web server using java and jsp (it is a web server for an iPhone application). I don't know a lot about java so I'm having a lot of troubles trying to construct a server by myself. For now, I have tried implementing cookie, database, and some other methods. Now that I've given you basic information about my web server, I have a few questions to ask.
Is it the right approach to use java and jsp to make a web server like this? the java servlets get and send user inputs to different jsp pages, which contain some HTML and java code. But I've found some posts here that it's a bad practice to use jsp like this. I don't know how else I can make webpages. Could anyone please recommend the right approach to make a web server (like the one linked above)? I would love to know if there is some kind of a template that I can take a look at.
What you are making doesnt seem to be a "server" at all but rather a "web application" or "web site". The former implies you are creating a piece of sfotware to implement a specific protocol like HTTP, FTP, etc. while the latter is making a series of web pages or and application that runs on server.
You can create a web application in any number of languages, not just Java. From the screenshot you shared i would think that using Rails (Ruby), Django (Paython), or Symfony2 (PHP) would probably get you up and running pretty fast as it looks like you dont need much more than some basic model scaffolding with a pretty face.
If you are familiar with Java you might also want to try the Play! framework...

Mini server implementation in Objective C

I'm trying to implement a little server service in order to upload files via web browser to my iOS app. An example of this feature is implemented in the following app:
http://itunes.apple.com/uy/app/files-document-reader/id294150896?mt=8
seems to be very simple, but don't know where to start.
I've been also looking for clues or some sample codes about this kind of implementation with no success, but maybe just don't know how to google the problem correctly.
Any clues, guides, links, etc...?
Thanks in advance
Here is a wrapper to embed the moongoose http server in your iphone application. Another simple http server is here. The latter one is the one I used in my application, recently.
EDIT:
There's at least a third one, too.