Раскачиваем мир AdHoc! ?
git clone https://github.com/FoundersFactory/AdRock.git
npm install forever -g
.env
: cd Server && touch .env
.env
со своей информацией: AUTH0_CLIENT_ID=
AUTH0_CLIENT_SECRET=
AUTH0_DOMAIN=<your-company-name>.eu.auth0.com
AUTH0_CALLBACK_URL=http://localhost:3000/adrock
PORT=3000
HOST=localhost
EXTERNAL_URL=https://example.com
/Server
): forever stopall && git pull && npm install --save &&
NODE_ENV=production forever --minUptime 1000 --spinSleepTime 1000 start ./forever.json
Это будет:
express
приложение по умолчанию на порту 3000
GET <domain>/adrock/<full-app-bundle-id>
POST <domain>/adrock/upload
для получения приложенийЕсли у вас уже есть экспресс-приложение и вы хотите интегрировать в него AdRock :
//Requires
const dotenv = require("dotenv");
const jwt = require("express-jwt");
const cors = require("cors");
//Other stuff you might want to do
{...}
//Loading the environment variables and Auth0
dotenv.load();
const authenticate = jwt({
secret: new Buffer(process.env.AUTH0_CLIENT_SECRET, 'base64'),
audience: process.env.AUTH0_CLIENT_ID
});
//Other stuff you might want to do, especially creating your express app
{...}
//ADROCK!!!
//Getting apps
app.use("/adrock", require("./routes/get"));
//Auth
app.use("/adrock/upload", authenticate);
//Uploading apps
app.use("/adrock/upload", require("./routes/post"));
app.use(function (err, req, res, next) {
if (err.name === 'UnauthorizedError') {
res.status(401).send('Invalid token...');
return;
}
next(err);
});
Если вы используете Nginx, добавьте это в свой основной файл .conf
:
location /adrock {
include /<path-to-adrock>/Server/nginx.conf;
}
Чтобы загрузить новое приложение или новую версию существующего приложения, вам необходимо создать многочастный POST
-запрос к <domain>/adrock/upload
содержащий:
app
=> файл .ipa
или .apk
размером не более 512 МБ.icon
=> файл .png
для значка приложения (необходим только при первой загрузке и для приложений iOS)bundleId
=> полный идентификатор пакета приложения (например, com.example.raddest-app-ever )version
=> Версия приложения (например, 0.3.1 )name
=> Название приложения (например, Raddest App Ever ) В случае успеха вы получите URL-адрес index.html
приложения, который аналогичен вызову <domain>/adrock/<full-app-bundle-id>
.
curl -X POST <domain>/adrock/upload
-H Authorization=Bearer <your-jwt>
-F app=<path/to/ipa>
-F icon=<path/to/icon>
-F bundleId=<full-app-bundle-id>
-F name='The App's Name'
-F version=0.3.1