Universe Oauth
View all Actors
This Actor is unavailable because the developer has decided to deprecate it. Would you like to try a similar Actor instead?
See alternative ActorsUniverse Oauth
kelvinspencer/universe-oauth
This is an actor that will facilitate the Oauth for the Universe.com website.
Dockerfile
1# This is a template for a Dockerfile used to run acts in Actor system.
2# The base image name below is set during the act build, based on user settings.
3# IMPORTANT: The base image must set a correct working directory, such as /usr/src/app or /home/user
4FROM apify/actor-node-chrome:v0.21.10
5
6# Second, copy just package.json and package-lock.json since it should be
7# the only file that affects "npm install" in the next step, to speed up the build
8COPY package*.json ./
9
10# Install NPM packages, skip optional and development dependencies to
11# keep the image small. Avoid logging too much and print the dependency
12# tree for debugging
13RUN npm --quiet set progress=false \
14 && npm install --only=prod --no-optional \
15 && echo "Installed NPM packages:" \
16 && (npm list --all || true) \
17 && echo "Node.js version:" \
18 && node --version \
19 && echo "NPM version:" \
20 && npm --version
21
22# Copy source code to container
23# Do this in the last step, to have fast build if only the source code changed
24COPY . ./
25
26# NOTE: The CMD is already defined by the base image.
27# Uncomment this for local node inspector debugging:
28# CMD [ "node", "--inspect=0.0.0.0:9229", "main.js" ]
package.json
1{
2 "name": "apify-project",
3 "version": "0.0.1",
4 "description": "",
5 "author": "It's not you it's me",
6 "license": "ISC",
7 "dependencies": {
8 "apify": "0.21.10",
9 "request-promise": "latest"
10 },
11 "scripts": {
12 "start": "node main.js"
13 }
14}
main.js
1const Apify = require('apify');
2const request = require('request-promise');
3const http = require('http');
4const https = require('https');
5
6var body = "";
7Apify.setValue('test-key-2', "test");
8
9Apify.main(async () => {
10 // Get input of your actor
11 const input = await Apify.getValue('INPUT');
12 await Apify.setValue('test-key', "test", { contentType: 'text/html' });
13
14
15 var client_id = 'd80e14c53cd1c04ddbaec2c70f6e3aacde2439d0f1f9615a7e50f74d36de1987';
16 var client_secret = 'c2459604023bbb464885672727e931584e88475ebf7abcef82b1364cab79d64c';
17 //var redirect_url = 'https%3A%2F%2Fapi.apify.com%2Fv2%2Facts%2Fkelvinspencer%7Euniverse-oauth%2Frun-sync%3Ftoken%3DeqMr5hwRGiyFuhZgiRwTyppos';
18 var redirect_url = 'https://api.apify.com/v2/acts/kelvinspencer~universe-oauth/run-sync?token=eqMr5hwRGiyFuhZgiRwTyppos';
19 var redirect_url_encoded = encodeURI(redirect_url);
20 var res_type = 'code';
21 var auth_url = "https://www.universe.com/oauth/authorize?client_id="+client_id+"&redirect_uri="+redirect_url_encoded+"&response_type="+res_type;
22
23 // curl --request POST \
24 // --url 'https://www.universe.com/oauth/token' \
25 // --header 'content-type: application/json' \
26 // --data '{"grant_type":"client_credentials","client_id": "CLIENT_ID","client_secret": "CLIENT_SECRET"}'
27
28 console.log("Start");
29 var result = '';
30 var myJSONObject = { "grant_type": "client_credentials", "client_id": client_id, "client_secret": client_secret};
31 request({
32 url: "https://www.universe.com/oauth/token",
33 method: "POST",
34 json: true,
35 body: myJSONObject
36 }, async function (error, response, body){
37 result = body.access_token;
38
39 console.log("result");
40 console.log(result);
41
42 await Apify.setValue('universe-key', result, { contentType: 'text/html' });
43 console.log("---");
44
45 console.log(response);
46
47
48 });
49 console.log("End");
50
51
52 // Do something useful here
53 //const html = await request('http://www.example.com');
54
55 // And then save output
56 const output = {
57 body,
58 result,
59 crawledAt: new Date(),
60 };
61 console.log('My output:');
62 console.dir(output);
63 await Apify.setValue('OUTPUT', output);
64});
Developer
Maintained by Community
Categories