여름 인턴으로 JMP , 내 프로젝트에는 웹에서 API 작업이 포함되었습니다.프로젝트의 처음 몇 주 동안 JMP에서 다른 API를 작동시키거나 가능하다면 약간의 학습 곡선이 있었습니다. 라는 비디오에서 이 비유를 보고 이해의 지점에 도달할 수 있었습니다. RESTful API란 무엇입니까? REST & HTTP에 대한 설명 :
당신이 식당에 있다고 상상해보십시오. 당신은 다른 사람에게서 원하는 것을 되찾기 위해 상호 작용하는 소비자/사용자입니다. 주문을 받으러 오는 웨이터는 API에 비유할 수 있습니다. 웨이터가 와서 주문을 받고 (보내다) 다시 부엌으로 (또는 이 경우 서버 또는 API가 통신할 수 있는 모든 종류의 소프트웨어) . 주문이 완료되면 (또는 소프트웨어 또는 서버가 응답을 제공함) , 웨이터가 돌아와 주문을 줄 것입니다. (귀하의 요청을 이행) . 요청이 완료되었습니다!
이 비유를 찾은 후 API 작동 방식에 대한 좋은 정신적 모델이 생겼습니다.
내 프로젝트의 초점은 JMP 웹에서 REST API에 액세스할 수 있는 추가 기능입니다.몇 가지 작업 예제를 보여주고 REST API에 대해 사용자에게 가르치고 추가 기능을 사용할 때 백그라운드에서 일어나는 일을 이해하도록 도와야 했습니다.

이 프로젝트의 동기는 JMP 14의 HTTP Request()의 새로운 기능이었습니다. API, 특히 REST의 아키텍처 스타일은 여전히 상대적으로 새로운 것으로 간주됩니다. 내 첫 번째 과제는 REST에 대해 배우는 것이었습니다.
REST 또는 RESTful API는 REST 아키텍처 스타일의 구성 요소와 품질을 포함하는 API입니다. REST는 Representation State Transfer의 약자이며 잘 설계된 애플리케이션이 작동하는 방법에 대한 프로토콜 및 표준 작업 집합을 정의합니다. REST는 주로 브라우저에서 사용되며 프레임워크는 "인터넷 언어"라고 할 수 있습니다. RESTful로 간주되려면 애플리케이션에 클라이언트-서버 아키텍처, 상태 비저장, 캐시 가능성, 계층화된 시스템, 온디맨드 코드 실행 기능, 균일한 인터페이스 등 6가지 주요 특성이 있어야 합니다. 최종 사용자 입장에서는 API가 RESTful인지 여부는 크게 중요하지 않지만 프로그래밍 측면에서 RESTful이 되는 이점이 많기 때문에 API의 표준이 되었습니다.
내가 가진 다음 도전은 JSL이었습니다. JSL에서 추가 기능에 대한 UI를 어떻게 만들고 싶은지 확신이 서지 않아 Appbuilder for JMP를 살펴보았습니다. 백엔드용 스크립트를 프런트엔드용 스크립트(또는 이 경우 Appbuilder)에서 분리하고 모든 것을 시각적으로 정리할 수 있었기 때문에 Appbuilder를 사용하여 추가 기능을 작업하기로 결정했습니다.
이것이 최종 제품의 모습입니다.

다른 인증 방법에 대한 자세한 설명을 원하는 사람들을 위해 조사하고 상단의 도움말 버튼에 편집했습니다. 우리가 다룰 각 인증 유형에 대한 설명을 제공합니다.
다음은 재미있는 부분이었습니다. 추가 기능 내에서 활용하기 위해 액세스할 수 있는 다른 API를 찾았습니다. CAT API는 개인적으로 가장 좋아하는 API이므로 두 번 사용했습니다(인증 없이 한 번, 인증 없이 한 번). 보내기를 클릭할 때마다 새로운 고양이가 뜹니다!


Cat API를 작동시킨 후 몇 가지 다른 좋은 예를 찾았고 내가 가장 좋아하는 것을 추가 기능에 포함했습니다.

특히 Tumblr 예제에서 작업하는 것이 즐거웠습니다. 너무 많은 정보(전체 tumblr 블로그)를 검색하기 때문입니다. 검색된 정보를 표시할 수 없었습니다. 저것 예쁘긴 한데 그래도 좋은 역할을 하는 것 같아요. 다른 Tumblr 게시물에서 정보를 검색하려는 사람은 여기에서 JSL 스크립트의 Tumblr 블로그 주소를 전환할 수 있습니다.

마지막 예는 특별한 것이었습니다. Dropbox는 다른 주요 개발자 중 한 명이 이미 작업한 예입니다. 이 예제를 내 추가 기능에 통합하여 프로그래밍 경험이 없는 사람도 사용할 수 있도록 최대한 사용자 친화적으로 만들고 싶었습니다. JMP를 통해 버튼 클릭 한 번으로 파일과 폴더를 원격으로 업로드할 수 있다는 사실은 여전히 저를 놀라게 합니다.

나는 당신이 그것을 시도하기를 바랍니다. 궁금한 사항이나 의견을 남겨주세요.
추가 기능 자체를 활용하는 방법에 대한 지침은 내 게시물을 참조하십시오. REST 시작하기 .