rakuten_web_서비스 소개

누구세요?

  • Twitter, Qiita: @sato_ryu
  • Facebook: Tatsuya Sato
  • 뭐 해요?

  • R이 있는 인터넷 서비스 기업의 정보 시스템 측면
  • 루비, 레일스, 교란
  • 좋아하는 편집기

  • vim
  • Visual Studio Code
  • 오늘의 제목:자제gem


    홍보하러 왔습니다.

    rakuten_web_service

  • 롯데 웹 서비스 API의 루비 클라이언트

  • 롯데 네트워크 서비스

  • 롯데에서 제공하는 서비스 정보를 얻기 위한 API 그룹
  • 롯데마켓 상품
  • 롯데여행의 숙박시설, 유휴정보
  • 롯데북스, CD/DVD, 매거진
  • 코보의 책
  • 식단 순위
  • 골프시설의 정보, 노선 정보
  • 잠깐만요.

    동기: 다른 좋은 것은 없다.

  • 이미 많아요.
  • 그런데 마음에 드는 게 없어요.
  • 최신 API는 지원되지 않습니다.
  • 웹 API를 인식하고 코드를 작성해야 합니다.
  • 원래 우리 회사에는 공식 클라이언트가 없었다
  • 2013년 여름, 터무니없다



    공식 고객 대상



    사용법


    준비: 응용 프로그램 ID 설정

    RakutenWebService.configuration do |c|
        # アプリケーションID
        c.application_id = 'YOUR_APPLICATION_ID'
    
        # アフィリエイトIDを設定すればアフィリエイトも!
        c.affiliate_id = 'YOUR_AFFILIATE_ID'
    end
    
  • 에서 ID를 가져옵니다.
  • 상품을 검색해 보세요.

    require `rakuten_web_service`
    
    items = RakutenWebService::Ichiba::Item.
      search(keyword: 'BABYMETAL')
    

    상품에 대한 정보를 얻어보세요.

    item = items.first
    
    # オブジェクトっぽく
    item.name #=> "BABYMETAL -来日記念限定盤ー (初回限定盤 CD+DVD) [ BABYMETAL ]"
    
    # JSONを扱う気分でも
    item['itemName'] #=> 同上
    

    붙이다

    items = items.page(3)  # 3ページ目
    
    if items.has_next_page? #次があれば次のページに
      items = item.next_page 
    end
    
    # 面倒くさいときは#allで全部取ってくる。
    items.all.each do |item|
      puts "#{item.name} - #{item.price}円"
    end
    

    API 간의 원활한 협력

  • 상품 검색, 유형 정보, 순위는 각각 기타 API
  • 차이를 개의치 않는 커넥터
  • # さっき検索した商品と同じジャンルのTOP3
    item.genre.ranking.first(3)
    

    곤란한 일


    개발할 소재를 찾다

  • 주요 API 대응
  • 여행, 책갈피 남기기
  • 사용자의 목소리를 찾고 싶습니다.
  • 롯데 네트워크 서비스
  • 좋은 웹페이지 즐겨찾기