데이터베이스에서 렌더링 백엔드라는 페이지의 렌더링 작업에 읽기 데이터를하기 전에. 배경 인터페이스로서 만 배경 정보를 제공하여, 페이지에 관련된 모든 동작들은 이러한 현상 패턴을 수행하는 프론트 엔드에서 격리 된 전방 및 후방 단부 렌더링이라고 선단 인 배치된다.
여러 주류 무대 인터페이스 개발
1.json 인터페이스
2.jsonp 인터페이스 (도메인 간 인터페이스)
3.restful 인터페이스
그런데이 세 가지 인터페이스에 대한 간단한 프리젠 테이션은 다음과 같은 :
/ * * * 인터페이스 개발 배경 * / const를 익스프레스 = ( '익스프레스'를 필요로 ); const를 DB는 = 요구] ( './ db.js' ); const를 앱 = 익스프레스 (); // 지정된 경로 API를 allBooks (JSON 인터페이스) app.get ( '/ allBooks'(REQ, RES) => { 송출의 SQL은 = '책에서 SELECT *' ; db.base (SQL, 널 (null) , (결과) => { res.json (결과); }) ; });
// 콜백 함수의 기본 이름은 콜백 기본 이름을 대체하려면, 다음과 같은 문 실행할 수있다 // HTTP는 : //는 = foo는 3000 / allBooks 콜백 :? 로컬 호스트 기본 액세스 모드입니다 // 액세스 방법은 ? : HTTP : // localhost를 : 3000 / allBooks의 CB = foo는 // 액세스 에러가 브라우저 불평하지만, JSON 데이터 형식의 반환하지 않는 경우 app.set ( '이름 JSONP 콜백', 'CB를' ); // API는 지정된 경로 allBooks (JSONP 인터페이스) app.get ( '/ allBooks'(REQ, RES) => { 송출의 SQL = '* 도서에서 SELECT' ; db.base (SQL, 널 (null) >) =을 (결과 { RES를 .jsonp (결과); }) }) app.listen ( 3000 () => { CONSOLE.LOG ( '실행 ...' ); });
/ * * * 편안한 API를是의从의 URL的格式来表述的 * GET에 http : // localhost를 : 3000 / 책 * GET에 http : // localhost를 : 3000 / 책 / 책 * 포스트에 http : // localhost를 : 3000 / 책 / 책 * GET에 http : // localhost를 : 3000 / 책 / 책 / 1 * 넣고에 http : // localhost를 : 3000 / 책 / 책 * HTTP 삭제 : // localhost를 : 3000 / 책 / 책 / 2 * *传统的URL风格: *에 http : // localhost를 : 3000 / *에 http : // localhost를 : 3000 / toAddBook *에 http : // localhost를 : 3000 / addBook *에 http : // localhost를 : 3000 / toEditBook ID = 1? *에 http : // localhost를 : 3000 / editBook *에 http : // localhost를 : 3000 / deleteBook ID = 2 * / const를 표현 =이 ( '표현'이 필요합니다 ) CONST DB요구] = ( './ db.js' ); const를 앱 = 익스프레스 (); app.get ( '/ 책'(REQ, RES) =이> { 송출의 SQL은 = '책에서 SELECT *' ; db.base을 ( SQL, 널 (null) , (결과) => { res.json (결과); }); }); // 당신 경로가 '/ 책 / 책 / : ID '아이디 속성 수 req.params.id에서 양식을 얻을 app.get ( '/ 도서 / 도서 / : ID'(REQ, RES) => { 송출 된 ID = req.params.id, 송출의 SQL은 = 'SELECT * WHERE에서 ID = 예약?' , 송출 데이터 = [ID] db.base (SQL, 데이터 (결과) =>{ res.json (결과 [ 0 ]); }); }); app.listen ( 3000 () => { CONSOLE.LOG ( '실행 ...' ); });