noun. Even if your internal data model and resources already have a good correspondence, API design you still do not need to expose them to one-on. The key here is to hide the internal resources and expose the necessary external resources.In Supportfu, resources are ticket, user, group.Once you have defined the resources you want to expose, you can define the actions that are allowed on the resource, and t
). The core principle of rest is to split your API into logical resources. These resources are manipulated via HTTP (GET, post,put,delete).
So how do I split these resources?
Obviously from an API user's point of view, "resources" should be a noun. Even if your internal data model and resources already have a good correspondence,
current URL (collection relationship, and gives the collection URL), the href represents the path to the API, title represents the API's caption, and type represents the return type.The design of the Hypermedia API is known as Hateoas. The GitHub
current URL (collection relationship, and gives the collection URL), the href represents the path to the API, title represents the API's caption, and type represents the return type.The design of the Hypermedia API is known as Hateoas. The GitHub
relationship between this API and the current URL (collection relationship, and gives the collection URL), the href represents the path to the API, title represents the API's caption, and type represents the return type.The design of the Hypermedia
becomes more severe. To ensure that each function and function added to the library strengthens the library's purpose, more consideration is required. For a large library like the kendo UI, the purpose of extensibility does not mean that we need to add each feature to the library. For a library as large as kendo, functional objects and attributes should prove their value to be included in the library. For example, Kendo UI ' JavaScript is based on DataSource, which can be used to query and proc
with HTTPS
The use of HTTPS to ensure the security of the entire API call process, which can effectively prevent eavesdropping and tampering.
In addition, because of the security of communications, a more convenient Token mechanism can be used to simplify the validation process without having to sign each request again.
For non-HTTPS API calls, do not redirect it to HTTPS, and return a call error directly
difference and other architectural style
For the resource-oriented architectural style of rest, a new architectural concept is proposed, namely: resource-oriented architecture (Roa:resource oriented Architecture)
Second, RESTful API design
1. Agreement
The API communicates
, the server first verifies whether api_key exists and obtains the security_key of the api_key if it exists. Then, it verifies whether the timestamps exceed the time limit, which can be determined by the system, in this way, some replay attacks are prevented. The rest_api on the way obtains/rest/v1/interface/eth0 from the url, and finally calculates the sign value, verify the signature value with the sign v
architecture style, rest is the abbreviation for representational state transfer, and Chinese translates as "representational states transfer"
Rest looks at the entire network from the resource's perspective, which identifies the resources distributed across a node in the network through URLs, and the client application uses URLs to obtain representations of the resources, resulting in these applicatio
one is to process strings.
?
1 2 3 4 5 6 7 8 9
_. Each (["Todd", "Burke", "Derick"], function (name ){ Alert (name ); }); _. Map ([1, 2, 3], function (num ){ Return num * 3; }); _. IsNumber ("ten"); // False
When a database grows, the challenge of maintaining the proportion becomes more severe. To ensure that every function and function added to the database can enhance the database, more investment is required. For a large library like kendo UI, the purpose of
. For a library as big as kendo, function objects and features should prove their value before they can be included in the library. For example, Kendo UI's JavaScript is based on DataSource, which can be used to query and process remote data.
var dataSource = new kendo.data.DataSource({ transport: { read: { url: "http://search.twitter.com/search.json", dataType: "jsonp", data: { q: "API
], function(num){ return num * 3; });_.isNumber("ten"); // False
As a library grows, the challenge of maintaining proportions becomes more severe. To ensure that each function and function that is added to the library strengthens the library's purpose, more input is needed. For a large library like the kendo UI, the purpose of extensibility does not mean that we need to add each feature to the library. For a library as large as kendo, functional objects and features should demonstrate th
Original address: http://blog.csdn.net/ywk253100/article/details/25654021Guide: Designing restful APIs is critical to the scalability, scalability, and consumer experience of software architectures. The theme of this virtual workshop is how to design restful APIs.Keywords: restful API REST OAuth protocolThe REST archit
application state) rule in the URI. There is no direct relationship between the version number and the resource.
URL parameter controlThat is, after each request, add a version parameter that indicates which edition is requested. As follows:http://server:port/api/customer/123?version=2 This approach is actually a variant of the URI pattern, the good and bad are the same.Mdedia Type ControlThat is, us
the complexity of the app backend, greatly improving the development efficiency of the app front-end.2.8 Points of API design(1) RESTful design principlesRESTful style: restfu design principle, which was put forward by Roy Felding (in his "web-based software Architecture" thesis in the fifth chapter). The core princip
1. If you have already begun to reach out to a friend of the RESTful API design approach, you should first have a general understanding of HTTP/HTTPS, although it has nothing to do with restful APIs. However, to increase the security of the site is very important, here is related to whether to expose the API interface, otherwise it will lead to the disclosure of
have no side effects? It is hard to say no. Due to the lack of cohesion, this API can actually do something else.
Is it reliable?The famous design principle "design to interfaces" helps enforce testability on an object. this API is inherently testable, but the number of test cases to verify may be huge due to its lac
1, the Web API core layer Design
In the current developed application scenario, we often need to access the WinForm client, app program, web program, and currently in the bustling micro-letter applications, such data should be provided by the same service, this is what we need to build the Web API platform, based on the above requirements, Many enterprises need t
/ID: Update information for a given zoo (some information about the zoo)
DELETE/ZOOS/ID: Delete a zoo
Get/zoos/id/animals: List all animals in a designated zoo
DELETE/ZOOS/ID/ANIMALS/ID: Delete a designated animal from a designated zoo
Vi. filtering information (Filtering)If the number of records is large, the server will not be able to return them to the user. The API should provide parameters to filter the returned results.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.