项目作者: mohitdmak

项目描述 :
Customized search Yt api wrap
高级语言: JavaScript
项目地址: git://github.com/mohitdmak/YoutubeSearchApi.git
创建时间: 2021-06-04T13:50:35Z
项目社区:https://github.com/mohitdmak/YoutubeSearchApi

开源协议:MIT License

下载


YoutubeSearchApi

Node.js CI

API Paths

After following the installation process below and starting project, the api shall be listening for requests at port 3000.

  • /

    Home path, app shall respond with a simple json acknowledgement

  • /search/< query >

    Insert query which you want your Data API v3 to send results for, which will be sorted by latest uploaded and return max responses of 2
    ( hard coded, can change at ./controllers/searchController.js)

  • /find/< query >

    Filter responses by video’s title or description or both.
    Server expects them to be values of keys:
    “title”
    “description”
    in url query strings.

    The < query > must have been searched for before in order to filter by title or description.

To start,


Create a Mongo Atlas Connection URI



- Login to Mongo Atlas
- Create a project and build new cluster ( it provides a free sandbox )
- Create Database users and secure network access to your machine’s IP only
- Create a database which has 2 collections:
- videos
- searches
- Obtain a connection uri for node version > 14

Get a Youtube Data API V3 key



- Visit Google Api Console, https://console.cloud.google.com/

- Create a new project and enable the Yt Data API v3 at https://console.cloud.google.com/apis/api/youtube.googleapis.com

- Create Credentials and secure the key to allow access to only the created api, and download credentials into your project folder.

- Preferrably procure multiple keys as the project will automatically cycles through keys, as their request quotas get exhausted.

Get the project in your local machine

  • Fork the project
  • Clone by following on terminal at preferred directory
  1. git clone https://github.com/<Your_Username>/YoutubeSearchApi.git

Setup the config folder

  • Copy and export the Mongo connection uri into a file at
    ./config/mongouri.js
    from your project.

  • Copy and export (as an array) the set of all api keys at
    ./config/apiKey.js
    from your project.

Containerise app

You can run app without docker in case of issues by:

  • Initiating project with npm pm
    1. npm init -y
  • Installing dependancies
    1. npm install i
  • Test Npm Script:
    1. npm run test
  • Starting Project
    1. npm run start