在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称(OpenSource Name):parse-community/parse-dashboard开源软件地址(OpenSource Url):https://github.com/parse-community/parse-dashboard开源编程语言(OpenSource Language):JavaScript 89.8%开源软件介绍(OpenSource Introduction):Parse Dashboard is a standalone dashboard for managing your Parse Server apps.
Getting StartedInstall the dashboard from
You can launch the dashboard for an app with a single command by supplying an app ID, master key, URL, and name like this:
You may set the host, port and mount path by supplying the The
After starting the dashboard, you can visit http://localhost:4040 in your browser: CompatibilityParse ServerParse Dashboard is compatible with the following Parse Server versions.
Node.jsParse Dashboard is continuously tested with the most recent releases of Node.js to ensure compatibility. We follow the Node.js Long Term Support plan and only test against versions that are officially supported and have not reached their end-of-life date.
Configuring Parse DashboardFileYou can also start the dashboard from the command line with a config file. To do this, create a new file called {
"apps": [
{
"serverURL": "http://localhost:1337/parse",
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "MyApp"
}
]
} You can then start the dashboard using Environment variables
There are also two methods you can use to configure the dashboard using environment variables. Multiple appsProvide the entire JSON configuration in Single appYou can also define each configuration option individually.
Managing Multiple AppsManaging multiple apps from the same dashboard is also possible. Simply add additional entries into the {
"apps": [
{
"serverURL": "http://localhost:1337/parse", // Self-hosted Parse Server
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "My Parse Server App"
},
{
"serverURL": "http://localhost:1337/parse2", // Self-hosted Parse Server
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "My Parse Server App 2"
}
]
} GraphQL PlaygroundParse Dashboard has a built-in GraphQL Playground to play with the auto-generated Parse GraphQL API. You can setup the GraphQL Playground by passing the
The
You can also setup the GraphQL Playground in your {
"apps": [
{
"serverURL": "http://localhost:1337/parse",
"graphQLServerURL": "http://localhost:1337/graphql",
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "My Parse Server App"
},
{
"serverURL": "http://localhost:1337/parse2",
"graphQLServerURL": "http://localhost:1337/graphql2",
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "My Parse Server App 2"
}
]
} After starting the dashboard, you can visit http://0.0.0.0:4040/apps/MyTestApp/api_console/graphql in your browser: App Icon ConfigurationParse Dashboard supports adding an optional icon for each app, so you can identify them easier in the list. To do so, you must use the configuration file, define an {
"apps": [
{
"serverURL": "http://localhost:1337/parse",
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "My Parse Server App",
"iconName": "MyAppIcon.png",
}
],
"iconsFolder": "icons"
} App Background Color ConfigurationParse Dashboard supports adding an optional background color for each app, so you can identify them easier in the list. To do so, you must use the configuration file, define an {
"apps": [
{
"serverURL": "http://localhost:1337/parse",
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "My Parse Server App",
"primaryBackgroundColor": "#FFA500", // Orange
"secondaryBackgroundColor": "#FF4500" // OrangeRed
},
{
"serverURL": "http://localhost:1337/parse",
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "My Parse Server App [2]",
"primaryBackgroundColor": "rgb(255, 0, 0)", // Red
"secondaryBackgroundColor": "rgb(204, 0, 0)" // DarkRed
}
]
} Other Configuration OptionsYou can set To change the app to production, simply set Prevent columns sortingYou can prevent some columns to be sortable by adding "apps": [
{
"appId": "local_app_id",
"columnPreference": {
"_User": [
{
"name": "createdAt",
"visible": true,
"preventSort": true
},
{
"name": "updatedAt",
"visible": true,
"preventSort": false
},
]
}
}
] Custom order in the filter popupIf you have classes with a lot of columns and you filter them often with the same columns you can sort those to the top by extending the "apps": [
{
"columnPreference": {
"_User": [
{
"name": "objectId",
"filterSortToTop": true
},
{
"name": "email",
"filterSortToTop": true
}
]
}
}
] Running as Express MiddlewareInstead of starting Parse Dashboard with the CLI, you can also run it as an express middleware. var express = require('express');
var ParseDashboard = require('parse-dashboard');
var dashboard = new ParseDashboard({
"apps": [
{
"serverURL": "http://localhost:1337/parse",
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "MyApp"
}
]
});
var app = express();
// make the Parse Dashboard available at /dashboard
app.use('/dashboard', dashboard);
var httpServer = require('http').createServer(app);
httpServer.listen(4040); If you want to run both Parse Server and Parse Dashboard on the same server/port, you can run them both as express middleware: var express = require('express');
var ParseServer = require('parse-server').ParseServer;
var ParseDashboard = require('parse-dashboard');
var api = new ParseServer({
// Parse Server settings
});
var options = { allowInsecureHTTP: false };
var dashboard = new ParseDashboard({
// Parse Dashboard settings
}, options);
var app = express();
// make the Parse Server available at /parse
app.use('/parse', api);
// make the Parse Dashboard available at /dashboard
app.use('/dashboard', dashboard);
var httpServer = require('http').createServer(app);
httpServer.listen(4040); Deploying Parse DashboardPreparing for DeploymentMake sure the server URLs for your apps can be accessed by your browser. If you are deploying the dashboard, then Security ConsiderationsIn order to securely deploy the dashboard without leaking your apps master key, you will need to use HTTPS and Basic Authentication. The deployed dashboard detects if you are using a secure connection. If you are deploying the dashboard behind a load balancer or front-facing proxy, then the app won't be able to detect that the connection is secure. In this case, you can start the dashboard with the var trustProxy = true;
var dashboard = new ParseDashboard({
"apps": [
{
"serverURL": "http://localhost:1337/parse",
"appId": "myAppId",
"masterKey": "myMasterKey",
"appName": "MyApp"
}
],
"trustProxy": 1
}); Configuring Basic AuthenticationYou can configure your dashboard for Basic Authentication by adding usernames and passwords your {
"apps": [{"...": "..."}],
"users": [
{
"user":"user1",
"pass":"pass"
},
{
"user":"user2",
"pass":"pass"
}
],
"useEncryptedPasswords": true | false
} You can store the password in either Multi-Factor Authentication (One-Time Password)You can add an additional layer of security for a user account by requiring multi-factor authentication (MFA) for the user to login. With MFA enabled, a user must provide a one-time password that is typically bound to a physical device, in addition to their login password. This means in addition to knowing the login password, the user needs to have physical access to a device to generate the one-time password. This one-time password is time-based (TOTP) and only valid for a short amount of time, typically 30 seconds, until it expires. The user requires an authenticator app to generate the one-time password. These apps are provided by many 3rd parties and mostly for free. If you create a new user by running {
"apps": [{"...": "..."}],
"users": [
{
"user":"user1",
"pass":"pass",
"mfa": "lmvmOIZGMTQklhOIhveqkumss"
}
]
} Parse Dashboard follows the industry standard and supports the common OTP algorithm Separating App Access Based on User IdentityIf you have configured your dashboard to manage multiple applications, you can restrict the management of apps based on user identity. To do so, update your {
"apps": [{"...": "..."}],
"users": [
{
"user":"user1",
"pass":"pass1",
"apps": [{"appId": "myAppId1"}, {"appId": "myAppId2"}]
},
{
"user":
全部评论
专题导读
上一篇:kubowania/netflix-clone-graphql-datastax: A Netflix Clone built using React Grap ...发布时间:2022-07-10下一篇:the-road-to-graphql/fullstack-apollo-express-mongodb-boilerplate: 发布时间:2022-07-10热门推荐
热门话题
阅读排行榜
|
请发表评论