我对网络开发相对较新,并且我开始研究使用MEAN均值堆栈进行开发。我有一个非常简单的问题。
所以,我想创建一个简单的网页,显示mongo db中的水果列表。最终用户只会看到这个水果列表。但是,我希望能够编辑此列表。所以我必须创建另一个页面(如管理页面)来做到这一点?此外,我如何创建它,以便只有我可以访问管理页面。
我猜我必须创建另一个页面,从同一个数据库和编辑/添加或其他任何内容。我担心的是如何保持这个管理页面的私密性。请注意,该网站没有任何'用户登录'
谢谢你!答案 0 :(得分:0)
我对平均堆栈也很陌生。我认为最简单的方法是实现某种用户登录系统,其中所有访客都可以查看列表,只有登录用户才能编辑列表。如果您克隆了meanjs的官方git回购,那么有一个名为文章的示例模块,用户可以创建,但每个人都可以查看。从那里开始,看看他们如何实现每个页面和路由的权限。祝你好运。
编辑:
要在服务器第一次启动时添加默认管理员用户,请查看/config/env/default.js和production.js。在那里,您将能够使用默认凭据为管理员用户设定种子。在此之后,您可以删除注册页面和路由,这样就没有人可以创建新用户,只留下默认管理员用户的登录。
要创建管理页面,请创建一个新视图并将其添加到客户端的路由中,但只允许管理员请求该视图。 /client/config/client.config.js中的内容如下:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<context:annotation-config/>
<context:component-scan base-package="com.iggroup.api"/>
<context:component-scan base-package="com.goodsoft.stockbox.ig"/>
<bean name="objectMapper" class="com.fasterxml.jackson.databind.ObjectMapper"/>
<bean name="restTemplate" class="org.springframework.web.client.RestTemplate">
<property name="requestFactory" ref="requestFactory"/>
</bean>
<bean name="requestFactory" class="org.springframework.http.client.HttpComponentsClientHttpRequestFactory">
<property name="connectTimeout" value="10000"/>
<property name="readTimeout" value="10000"/>
</bean>
<bean name="httpClient" class="org.apache.http.client.HttpClient" factory-bean="requestFactory"
factory-method="getHttpClient"/>
<bean name="apiservice" class="com.goodsoft.stockbox.ig.business.service.ApiService"/>
</beans>
和/client/config/client.routes.js:
import cv2
import cv2.cv as cv
capture = cv2.VideoCapture(cv.CV_CAP_OPENNI)
capture.set(cv.CV_CAP_OPENNI_IMAGE_GENERATOR_OUTPUT_MODE. cv.CV_CAP_OPENNI_VGA_30HZ)
okay, color_image = capture.retrieve(0, cv.CV_CAP_OPENNI_BGR_IMAGE)
希望这有帮助。