Send a request to a URL like https://runkit.io/runkit/json-endpoint-example-1/branches/master?url=http://google.com, get back the title of the page in the url query parameter.
var endpoint = require("@runkit/runkit/json-endpoint/1.0.0")
var request = require("request") // peer dependency
var requestPromise = require("request-promise")
var cheerio = require("cheerio")
endpoint(module.exports, async function(request)
{
try {
var html = await requestPromise(request.query.url)
var page = cheerio.load(html)
} catch(e) {
return {error: "could not retrieve page"}
}
return {
title: page("title").text() || "no title"
}
})
Because we're using async/await, we're automatically returning a Promise. You can always explicitly return a promise too.
Loading…
11 comments
posted 5 years ago by randomstand
Wow..
posted 4 years ago by 5ec98e10c29904001bf9f92a
Tf t te k
posted 4 years ago by escobar-20
Hi all
posted 2 years ago by matt-destroyer
Doesn't seem to work for any available version of NodeJS above v6.17.1 ...