Ruby
변경 이력
gem의 모든 릴리스를 최신순으로 정리했습니다.
0.0.1
첫 번째 릴리스입니다. 이 릴리스를 만든 시점의 TypeScript SDK 전체, 즉 0.0.8과 그 뒤로 예정된 변경을 포함합니다: 41개 네임스페이스에 걸친 430개 메서드가 각각 TypeScript 이름을 snake_case로 바꾼 이름으로 제공되며, 그 모두가 TypeScript 짝이 보내는 요청과 바이트 단위로 같은 요청을 보냅니다.
OpenEmail::Client에는emails,threads,templates부터provider_imports,dns_connections,account까지 모든 네임스페이스의 리더가 있습니다.listAll은list_all,getActive는get_active,tempMail은temp_mail입니다.- 요청 본문은 키워드 인자나 Hash 하나로 전달하며, 그 키는 API의 camelCase 이름을 그대로 씁니다. 응답은 Symbol 키를 가진 Hash로 돌아옵니다.
- 페이지로 나뉘는 모든 리소스에는
OpenEmail::Page하나를 반환하는list, 모든 항목을 Array로 반환하는list_all, 그리고 각 항목을 블록에 yield하거나 다음 페이지에 이르렀을 때만 그 페이지를 가져오는 Enumerator를 반환하는iterate가 있습니다.PeoplePage,TempMessagesPage,AddressBookPage,AddressBook,BatchResult,TemplateSends는 목록 이상을 담은 답을 전달합니다. - API의 거부는
OpenEmail::ApiError또는 오류 유형에 맞는 그 하위 클래스를 발생시키며, 여기에는status,type,code,param,doc_url,request_id,retry_after_seconds,fields,body와,validation?,step_up_required?같은 술어 메서드가 있습니다. 응답이 전혀 없으면OpenEmail::NetworkError를 발생시키며, 기한이 지났으면timeout?이 true입니다. 호출 자체의 실수는 무엇이든 보내기 전에ArgumentError를 발생시킵니다. OpenEmail.create_client는OPENEMAIL_API_KEY,OPENEMAIL_ACCESS_TOKEN,OPENEMAIL_BASE_URL로 클라이언트를 만들고,OpenEmail.init,OpenEmail.client,OpenEmail.reset_client는OpenEmail.emails를 비롯한 모든 네임스페이스가 거쳐 가는 공유 클라이언트 하나를 관리합니다.OpenEmail.create_temp_mail은 자격 증명 없이 일회용 받은편지함을 엽니다.access_token:은 OAuth 액세스 토큰, 또는call에 응답해 토큰을 반환하는 객체를 받으며, 이 객체는 모든 요청 전에 호출됩니다. 모든 메서드는 호출 하나에 한해 다른 키로 실행하기 위한api_key:를 받고,temp_mail메서드는inbox_token:을 받습니다.OpenEmail.verify_webhook_signature는 전달을 상수 시간으로 검사하고, 5분보다 오래된 것은 거부하며, 파싱된 이벤트를 반환합니다. 서명은 대소문자를 가리지 않는 Hash, Rack env, 또는 Rails의request.headers에서 읽습니다.OpenEmail.to_base64,api_key?,access_token?,sealed?,resolve_language,language_by_code,rtl_language?는 TypeScript SDK의 헬퍼에 해당하며, 그 패키지 루트가 내보내는 모든 값 집합은OpenEmail의 동결된 Hash입니다.- 런타임 의존성이 없습니다. 요청은 Net::HTTP를 거치며, 하나의 클라이언트가 스레드 간에 공유하고 fork 후에 다시 만드는 keep-alive 연결 풀을 사용합니다.
timeout:은 시도 하나 전체의 상한입니다. - 읽기, 발송, 그리고 반복해도 안전한 모든 쓰기는 408, 500, 502, 503, 504에서 백오프와 함께 재시도되며, 429에서는
Retry-After가 1분 이하일 때만 재시도됩니다. 모든 발송에는 재시도에서 재사용되는 멱등성 키가 붙습니다. - 클라이언트는 이 컴퓨터 외의 곳으로 암호화되지 않은
http:를 통해 자격 증명을 보내기를 거부하고,0.0.0.0의base_url을 거부하며, 요청을 쪼갤 수 있는 헤더를 거부하고,raw.request가 기본 URL의 오리진을 벗어나는 것을 절대 허용하지 않습니다.