Tag: angularjs

loopback-storage-component如何显示图片文件

我正在使用loopback-component-storage将图像上传到服务器。 https://docs.strongloop.com/display/public/LB/Storage+component 我也有AngularJS JavaScript SDK,所以我的lb-services.js是dynamic更新的。 https://docs.strongloop.com/display/public/LB/AngularJS+JavaScript+SDK 现在我想在我的网页上显示来自这个环回组件存储模型(称为容器)的照片,所以我可以在我的angular度控制器方法getFile(来自lb-service)中使用“获取指定容器中指定文件的信息”。 像那样: $scope smthing = Container.getFile({container: 'news-imgs', file: 'smallpic.pnh'}) 或者我可以使用方法下载,即“在指定容器内下载文件”。 像那样: $scope smthing = Container.download({container: 'news-imgs', file: 'smallpic.png'}) 在我的控制器。 现在,问题是,当我在.html文件{{smthing}}写入时,第一个方法会显示给我 { "container": "news-imgs", "name": "smallpic.png", "size": 757, "atime": "2015-12-01T11:49:36.840Z", "mtime": "2015-12-01T11:49:36.840Z", "ctime": "2015-12-01T11:49:36.840Z" } 第二种方法会显示如此多的悲伤迹象: "0":" ","1":"P","2":"N","3":"G","4":"\r","5":"\n","6":"\u001a","7":"\n","8":"\u0000","9":"\u0000","10":"\u0000","11":"\r","12":"I","13":"H","14":"D","15":"R","16":"\u0000","17":"\u0000","18":"\u0000","19":"\u0014","20":"\u0000","21":"\u0000","22":"\u0000","23":"\u0012","24":"\b","25":"\u0003","26":"\u0000","27":"\u0000","28":"\u0000","29":"l","30":"\u000e","31":"\u000e","32":"\"","33":"\u0000","34":"\u0000","35":"\u0000","36":"\u0019","37":"t","38":"E","39":"X","40":"t","41":"S","42":"o","43":"f","44":"t","45":"w","46":"a","47":"r","48":"e","49":"\u0000","50":"A","51":"d","52":"o","53":"b","54":"e","55":" ","56":"I","57":"m","58":"a","59":"g","60":"e","61":"R","62":"e","63":"a","64":"d","65":"y","66":"q","67":" ","68":"e","69":"<","70":"\u0000","71":"\u0000","72":"\u0001","73":" ","74":"P","75":"L","76":"T","77":"E","78":" ","79":" ","80":" ","81":" ","82":" ","83":" ","84":" ","85":"\u0000","86":"r","87":" ","88":" ","89":" […]

如何在angular度客户端处理passport-facebookcallback?

我正在开发一个MEAN应用程序。 我正在使用护照进行身份validation – 本地,Facebook和谷歌战略。 我正在使用angularjs客户端。 所有的路由都在客户端处理。 我只使用服务器数据apis。 当使用passport-facebook策略时,我按照护照文档在节点服务器上使用下面的代码。 app.get('/auth/facebook',passport.authenticate('facebook-auth', { scope : ['email'] })); app.get('/auth/facebook/callback',passport.authenticate('facebook-auth', { successRedirect : '/home', failureRedirect : '/login', scope:['email'] })); 我面对的问题是当用户点击“使用Facebooklogin”button <a href="/auth/facebook" class="btn"><i class="fa fa-facebook"></i> Sign in using Facebook</a> 客户端将访问“/ auth / facebook”路线,最终将用户redirect到Facebook页面以validation用户的凭证。 validation成功后,用户将被redirect到按照“successRedirect”值定义的路由“/ home”。 现在的事情是,我想使用自定义callback函数,而不是定义成功或失败的redirect。 它将如下所示: app.get('/auth/facebook/callback',passport.authenticate('facebook-auth', function(err,user,info){ if(err){ throw err; } else if(user === 'userexists'){ res.json({ 'state':false, 'message':'User […]

用Googleloginlogin我的网站后获取谷歌帐户信息(用于login的卫星lib)

我已经使用卫星和节点服务器login我的网站与谷歌唱歌。 我已经成功login并在mongodb数据库中添加了以下数据。 { "_id" : ObjectId("57adec45a8fb51401c1ba843"), "displayName" : "xyz user", "picture" : "https://lh3.googleusercontent.com/-xxxxxxx_xx/xxxxxx/xxxxxxx/xxxxxxx/photo.jpg?sz=200", "google" : "100379763204xxxxxxxxx", //user id "__v" : 0 } 现在,我想从谷歌的性别,电话号码,位置等其他信息… 那么,如何从Google帐户获取login用户的所有信息?

如何从Node js Side获取基本path?

注意:我尝试了所有与此主题相关的问题和解答,但是无法解决问题。 我想从Node Js Side的基础path。 下面的例子。 我使用[angular js + NodeJS / ExpressJS] <base href="/Tutorial/Routing/StateProvider/" /> HTML <!DOCTYPE html> <html ng-app="myapp2"> <title>Index | Angular Js</title> <base href="/Tutorial/Routing/StateProvider/" /> <link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> <!–<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-route.js"></script>–> <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.3.2/angular-ui-router.js"></script> <script src="StateProviderController.js"></script> <body > <nav class="navbar navbar-default row"> <div class="container-fluid"> <div class="navbar-header"> <a class="navbar-brand" ui-sref="TutorialHome"> State Routing</a> </div> <ul class="nav […]

为了SEO的目的,使用AngularJS呈现静态可索引页面?

我目前正在使用Angular开发一个社交应用程序。 我希望有公共的,search引擎可索引页面陪同应用程序,如可转位的主页,关于页面和联系页面。 最好的办法是什么呢? 我不确定我的后端基础设施将会是什么,但它可能是以下之一: nginx / apache服务器实时销售与外部pub / sub服务的所有内容。 为前端和后端提供独立的服务 – nginx服务器自动售货前端内容。 单独的节点服务器的后端套接字的东西。 任何意见,这将是伟大的。 我很想弄清楚angular度是处理所有的路由,还是我分别处理静态路由。 这是我第一次和Angular玩。 干杯。

通过angular度加载玉模板

我正在一个单一的网页上的应用程序,我想用我的angular模板加载玉视图,但我正在努力包扎我的头正是如何做到这一点。 这是我的angular模板:index.html <!doctype html> <html ng-app="test"> <head> <title>My Angular App</title> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/angular.min.js"></script> <script type="text/javascript" src="/javascripts/app2.js"></script> </head> <body> <p> Hello </p> <div> <div ng-view></div> </div> </body> </html> 我为我的angular模板做了一个控制器:navigation.js angular.module('test', []) .config(viewRouter); function viewRouter ($routeProvider){ $routeProvider .when('/', {templateURL: 'views/index.jade'}); } 在这里,我试图使用一个玉石模板来渲染到页面上,但它似乎并没有工作。 我有一个观玉模板, index.jade extends layout block content h1= title include partials/menu .views-wrapper include partials/login layout.jade: doctype html […]

validationJson Web令牌并在login后redirect

我最近读了Angularjs的Cookies和Tokens ,并实现了login和身份validation部分,以允许用户从login页面login。 该应用程序设置为将账户模块(负责login,账户注册,个人资料等)作为单独的页面,将redirect到主应用程序的SPA。 成功login后,令牌作为JWT发送回login页面客户端,并通过js设置sessionStorage / localStorage值。 最后用户被redirect到(也通过js)到主应用程序。 这个问题是因为我通过jsredirect无法设置头,这显然在加载页面时主应用程序中的身份validation失败(因为我的身份validation中间件比静态和身份validationAPI要求都高)。 如果我尝试在表单发布之后从服务器redirect,而不是在成功时通过JSON返回标记,那么sessionStorage将不会按照博客文章中的描述通过js进行设置。 我已经提出了一些想法,并希望得到有关如果哪一个对最佳实践都有好处的意见。 从服务器设置一个响应authenticationcookie'只有'(我们所有的浏览器要求允许这个)cookie在下一个请求中读取到主应用程序。 然后cookie将被服务器读取并允许安全的静态资产被服务。 我最初的想法是设置一个cookie,它违背了在每个请求上使用授权标头的目的,因为即使在第一个API请求中删除了cookie,也可以读取该cookie。 允许之前提到的静态资产在不需要authentication的情况下(html,css,application js)和第一个内部API请求(在应用程序中几乎立即被加载)加载,然后通过Angular的$ http拦截器访问请求授权标头。 如果发回401,则相同的拦截器可以redirect到login页面。 我认为第二种方法是比较简单的方法,因为只需要将静态文件中间件下的auth中间件移动到Angular中,然后更新http拦截器,但是认为静态文件可以加载然后redirect事后。 任何input赞赏。

如何从模块实例获取服务实例

我有一些模块定义和服务,如下面的模块 var services=angular.module('app.services', []); services.factory('ApiService', function($http,$cookies,UserService){ var dataFactory = {}; dataFactory.request=function(url,data,next){ return "Hi"; }; return dataFactory; }); 现在在另一个脚本我可以访问模块 services=angular.module('app.services') 但是我怎样才能从该模块获得服务实例 apiService=angular.module('app.services').service('ApiService')

量angular器sendkeys不起作用:键码转换需要x显示

我正在尝试使用无头Chrome在Vagrant虚拟机内运行量angular器e2etesting。 我设法使用Xvfb工作,但是当我运行一个testing来填充表单时,我得到一个错误: 未知的错误:X代码转换需要X显示,考虑使用Xvfb 所有的testing运行良好,但只要我使用getKeys()(例如元素(by.model('user.email'))。sendKeys('admin');)我得到这个错误,即使我已经使用Xvfb。 我在跑: AngomanJS示例应用程序与Yeoman angular-fullstack生成器一起生成 Nodejs版本0.10.30,与nvm一起安装 stream浪者1.6.3 VirtualBox 4.3.14 主机操作系统Ubuntu 14.04 32位 客户操作系统Ubuntu 14.04 32位 铬37.0.2062.94 chromedriver 2.10.267517 我使用下面的shell脚本来启动Selenium和Xvfb: #!/ bin / sh的 webdriver-manager开始& Xvfb:1 -ac -screen 0 1280x1024x8& 导出DISPLAY =:1 我还添加了“export DISPLAY =:1”到/ opt / google / chrome / google-chrome。 同样,没有sendKeys()的testing运行良好。 我到目前为止所做的: 我正在运行32位的Ubuntu,所以我下载了chromedriver 2.10 32位,但没有帮助 我用–verbose运行chromedriver,并检查日志,但只显示相同的错误 我摆弄了Xvfb屏幕尺寸设置,也没有帮助 我在这里检查了一些源代码: https : //github.com/bayandin/chromedriver/blob/master/keycode_text_conversion_x.cc,并在第196行发现错误信息。当命令gfx :: […]

如何在Mean.io上聚合JS资源

我是Mean.io的新手,我试图将一个外部.js文件聚合到我的包中,但是我做错了,因为它没有被添加到aggregated.js中。 这就是我所做的: importer.register(function(app, auth, database) { importer.aggregateAsset('js', 'xml2json.min.js'); //We enable routing. By default the Package Object is passed to the routes importer.routes(app, auth, database); //We are adding a link to the main menu for all admin users VavelImporter.menus.add({ title: 'importer example page', link: 'importer example page', roles: ['admin'], menu: 'main' }); return importer; }); 重要的一行是:importer.aggregateAsset('js','xml2json.min.js'); […]