Rails 5 API 和 Phonegap
Rails 5 API and Phonegap
任何人都可以解释如何或指导我详细解释如何将 Rails 5 API 连接到 Phonegap 的教程。我是 Rails 的新手,没有使用 phonegap 的经验,这几天一直在寻找可以详细解释这一点的内容。我在前端使用 HTML5、CSS 和 JQuery。
非常感谢任何帮助。
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.yourname.workshop" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>Workshop</name>
<description>
A sample Apache Cordova application that responds to the deviceready event.
</description>
<author email="dev@cordova.apache.org" href="http://cordova.io">
Apache Cordova Team
</author>
<content src="http://localhost:3001" />
<plugin name="cordova-plugin-whitelist" spec="1" />
<access origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
</widget>
您 "connect" 在 Phonegap 中使用后端 Rails API 编写的前端应用程序的方式是使用 HTTP 请求。
Rails has an official guide for writing API-only applications. 您的应用不必只提供 API,但它需要提供一些易于解析的数据。 (通常JSON)
然后,您使用前端的库向后端定义的特定端点发出请求API。然后您可以解析响应以执行您需要执行的任何操作。 jQuery makes it easy to make requests.
在 Rails 中,让我们假设我有一个控制器,允许您对某些博客的帖子或其他内容进行常规的 CRUD 操作。它可能看起来像这样:
class PostsController < ApplicationController
responds_to :json
def show
@post = Post.find(params[:id])
respond_with(@post)
end
def index
@posts = Post.all
respond_with(@posts)
end
def create
@post = Post.create(params[:post])
respond_with(@post)
end
def update
@post = Post.find(params[:id])
@post.update_attributes(params[:post])
respond_with(@post)
end
end
现在您可以从 JavaScript(或其他任何东西)向这些操作发出 HTTP 请求:
$.get('/posts', {}, function(response){
// response here is the data returned by the Post#index action
})
$.post('/posts', {post: {content: "post content"}}, function(response){
// response here is the data returned by the Post#create action
})
这是一个非常基本的示例,但大多数 Web 应用程序只是此概念的一些变体。
任何人都可以解释如何或指导我详细解释如何将 Rails 5 API 连接到 Phonegap 的教程。我是 Rails 的新手,没有使用 phonegap 的经验,这几天一直在寻找可以详细解释这一点的内容。我在前端使用 HTML5、CSS 和 JQuery。
非常感谢任何帮助。
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.yourname.workshop" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>Workshop</name>
<description>
A sample Apache Cordova application that responds to the deviceready event.
</description>
<author email="dev@cordova.apache.org" href="http://cordova.io">
Apache Cordova Team
</author>
<content src="http://localhost:3001" />
<plugin name="cordova-plugin-whitelist" spec="1" />
<access origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
</widget>
您 "connect" 在 Phonegap 中使用后端 Rails API 编写的前端应用程序的方式是使用 HTTP 请求。
Rails has an official guide for writing API-only applications. 您的应用不必只提供 API,但它需要提供一些易于解析的数据。 (通常JSON)
然后,您使用前端的库向后端定义的特定端点发出请求API。然后您可以解析响应以执行您需要执行的任何操作。 jQuery makes it easy to make requests.
在 Rails 中,让我们假设我有一个控制器,允许您对某些博客的帖子或其他内容进行常规的 CRUD 操作。它可能看起来像这样:
class PostsController < ApplicationController
responds_to :json
def show
@post = Post.find(params[:id])
respond_with(@post)
end
def index
@posts = Post.all
respond_with(@posts)
end
def create
@post = Post.create(params[:post])
respond_with(@post)
end
def update
@post = Post.find(params[:id])
@post.update_attributes(params[:post])
respond_with(@post)
end
end
现在您可以从 JavaScript(或其他任何东西)向这些操作发出 HTTP 请求:
$.get('/posts', {}, function(response){
// response here is the data returned by the Post#index action
})
$.post('/posts', {post: {content: "post content"}}, function(response){
// response here is the data returned by the Post#create action
})
这是一个非常基本的示例,但大多数 Web 应用程序只是此概念的一些变体。