小编nao*_*oru的帖子

具有多个订户的Angular 2 Observable

我有一个角度2服务,从API获取数据,这个服务有3个订阅者(在组件中定义),每个订阅者使用数据执行其他操作(不同的图表)

我注意到我正在向API发出三个GET请求,而我想要实现的是一个请求,并且订阅者将共享我看到HOT和COLD可观察的数据并尝试使用.share()可观察但我仍在进行3次个人通话

更新,添加代码

服务

import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';

import {Observable} from 'rxjs/Rx';

// Import RxJs required methods
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';

import { StationCompliance } from './model/StationCompliance';


@Injectable()
export class StationComplianceService {

  private url = '/api/read/stations';

  constructor(private http : Http) {
    console.log('Started Station compliance service');
   }

   getStationCompliance() : Observable<StationCompliance []> {
     return this.http.get(this.url)
      .map((res:Response) => res.json())
      .catch((error:any) => Observable.throw(error.json().error || 'Server Error'));
   }
}
Run Code Online (Sandbox Code Playgroud)

组件1

import { Component, OnInit } from …
Run Code Online (Sandbox Code Playgroud)

rxjs angular

46
推荐指数
2
解决办法
4万
查看次数

玩框架2.1 junit测试不能从eclipse工作

我按照zentask教程编写了一个junit测试,测试不会从eclipse IDE运行它给出以下异常

javax.persistence.PersistenceException: java.lang.IllegalStateException: Class [class play.db.ebean.Model] is enhanced and [class models.User] is not - (you can not mix!!)
    at com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.setEntityBeanClass(BeanDescriptorManager.java:1475)
    at com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.createByteCode(BeanDescriptorManager.java:1138)
    at com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.readDeployAssociations(BeanDescriptorManager.java:1058)
    at com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.readEntityDeploymentAssociations(BeanDescriptorManager.java:565)
    at com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.deploy(BeanDescriptorManager.java:252)
    at com.avaje.ebeaninternal.server.core.InternalConfiguration.<init>(InternalConfiguration.java:124)
    at com.avaje.ebeaninternal.server.core.DefaultServerFactory.createServer(DefaultServerFactory.java:210)
    at com.avaje.ebeaninternal.server.core.DefaultServerFactory.createServer(DefaultServerFactory.java:64)
Run Code Online (Sandbox Code Playgroud)

我读了一下,发现有些人编辑了buils.scala,在main中添加了以下行:ebeanEnabled:= true

对我而言,它并没有关闭运行play clean编译的ide

有任何想法吗???

java eclipse playframework-2.0 playframework-2.1

14
推荐指数
2
解决办法
4815
查看次数

播放有关cookie和会话的框架安全问题

对于我的应用程序,我正在实现与zentask中显示的相同的安全性.

public class Secured extends Authenticator {

@Override
public String getUsername(Context ctx) {
    return ctx.session().get("email");

}

@Override
public Result onUnauthorized(Context ctx) {
    ctx.flash().put("error", "please login to proceed");
    return redirect(routes.Application.index());
}

}
Run Code Online (Sandbox Code Playgroud)

当用户通过isuser身份验证时session().put("email", email);

我有两个问题.第一:当用户在不使用注销的情况下离开应用程序时,如何使会话无效?第二个更严重的是我使用firefox插件检查了cookie cookies manager+并且我可以复制一个cookie然后粘贴它因此我可以访问方法而无需首先登录,基本上我可以窃取会话

security playframework-2.0

13
推荐指数
4
解决办法
9553
查看次数

如何在 POST 后刷新 angular2 中的 observable

我有一个显示信息的表,单击表行后,用户可以在完成请求后更新值,该表未使用新值更新,我必须按 F5 刷新视图。

如何在完成请求后强制执行新的 get 请求

这是相关的代码

我的服务

import { Injectable } from '@angular/core';

import { Http, Response } from '@angular/http';

import {Observable} from 'rxjs/Rx';

import { BehaviorSubject } from 'rxjs/BehaviorSubject';

// Import RxJs required methods
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';

import { Device } from '../model/Device';

@Injectable()
export class DeviceService {

  devices$: BehaviorSubject<Device[]>;

  constructor(private http : Http) {
    this.initializeDevices();
  }

  initializeDevices() {
    var url = "./api/read/network/device";
    //var url = '../assets/data/devices.json';
    if (!this.devices$) {
      this.devices$ = <BehaviorSubject<Device[]>> new BehaviorSubject(new Array<Device>());
      this.http.get(url) …
Run Code Online (Sandbox Code Playgroud)

observable rxjs rxjs5 angular

5
推荐指数
1
解决办法
7317
查看次数

使用 puppeteer 和 JSON 负载发出 POST 请求

我正在尝试使用 puppeteer 发出 POST 请求并在请求中发送一个 JSON 对象,但是,我遇到了超时......如果我正在尝试发送至少得到回复的正常编码表单数据来自无效请求的服务器......这是代码的相关部分

await page.setRequestInterception(true);
    const request = {"mac": macAddress, "cmd": "block"};
    page.on('request', interceptedRequest => {

        var data = {
            'method': 'POST',
            'postData': request
        };

        interceptedRequest.continue(data);
    });
    const response = await page.goto(configuration.commandUrl);     
    let responseBody = await response.text();
Run Code Online (Sandbox Code Playgroud)

我使用相同的代码来发出 GET 请求(没有有效负载)及其工作

node.js headless-browser puppeteer

5
推荐指数
1
解决办法
7393
查看次数

Eclipse:Play Framework 2 - 如何隐藏或移动根文件夹中的依赖项

我下载了play框架播放!2.1.0(使用Java 1.6.0_23和Scala 2.10.0)

它似乎play eclipsify不再有效但play eclipse正在发挥作用

但是生成的项目不是很好,所有依赖项都显示在根目录中.

是不是有一种方法来生成它像一个名为依赖项的maven类库,它将存储所有的依赖项?

java eclipse playframework-2.0

3
推荐指数
1
解决办法
1386
查看次数

Spring 启动应用程序显示 index.html 的 404

我有一个 Spring 启动应用程序和一个位于 src/main/resources/static 中的静态 index.html 文件

我的控制器很直接,看起来像这样

@Controller
@Log4j
public class StartController {

    @Autowired
    OwnerRepository ownerRepository;

    @RequestMapping("/")
    public String index() {
        return "index";


    }

}
Run Code Online (Sandbox Code Playgroud)

我唯一的配置是主要配置,当我点击 URL 时,它只有 @SpringBootApplication 我得到 404,根据我的理解,在启动时的日志中不需要进一步的配置,我看到以下内容

请求 [/index] 的 URI 模板变量为 {}

这是我的 POM

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.datasol</groupId>
    <artifactId>alquifacil</artifactId>
    <version>1.0</version>
    <packaging>jar</packaging>

    <name>AlquiFacil</name>
    <description>spring boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.1.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId> …
Run Code Online (Sandbox Code Playgroud)

spring-boot

3
推荐指数
1
解决办法
8721
查看次数

带有浮动标签的 Angular primeng 下拉第一次渲染得很糟糕

我有一个角度应用程序,当我第一次加载组件(p-dialog)时,我使用浮动标签,浮动标签“掉落”到选择,如图所示 在此输入图像描述

这是我使用的代码

<div class="ui-g-12">
  <span class="ui-float-label">
    <p-dropdown [options]="categories" formControlName="category" [style]="{ width: '100%' }"></p-dropdown>
    <label>{{ 'products.category-name' | translate }}</label>
  </span>
</div>
Run Code Online (Sandbox Code Playgroud)

这个表单是使用 formBuilder 生成的,我注意到如果我调用 form.reset(),那么下次模块会很好地呈现。我不确定问题的根源是什么,有什么想法吗?

primeng angular

3
推荐指数
1
解决办法
7829
查看次数

离子框架模式仅显示没有实际内容的黑色下拉列表

我正在做一个离子混合应用程序,我有一个模态的问题

当我调用modal.show()方法时,我看到blackdropdown但不是实际的模态内容(我从文档中复制粘贴示例).检查铬中的模态对象我看到它很好地实现了.

我认为它与我的项目设置有关,所以生病了

index.html(占位符)

 <body ng-app="myApp">      
<ion-pane>   
  <ion-nav-view animation="slide-left-right"></ion-nav-view>
</ion-pane>
</body>
Run Code Online (Sandbox Code Playgroud)

包含按钮以调用模态的页面

<ion-view class="backGround-clouds">
<ion-header-bar class="transparent" ng-controller="MenuController" align-title="center" style="margin-top:10px;">
    <div class="buttons" style="margin-top:20px;">    
    <button class="button header-right-decor" ng-click="returnToLastView()"><i class="ion-person" style="font-size:2em;"></i></button>
      <h1 class="title" style="height:65px;"><img src="img/new/logo.png"/></h1>
  </div>
 </ion-header-bar>   
<ion-content style="margin-top:75px;">

  <div id="errors" class="center" style="color:red;text-align:center;">
    <ul>
      <li ng-repeat="error in errors">{{error}}</li>
    </ul>
  </div>
  <div class="center login-title">Transactions List</div>


<div class="row">
       <div class="col">Date</div>
       <div class="col">Transaction</div>
       <div class="col">Amount</div>
       <div class="col"></div>
</div>

<div class="row" style="margin:0px;" ng-repeat="transaction in transactions">
       <div class="col">{{transaction.Date | date:"MM/dd/yy"}}</div>
       <div class="col">{{transaction.ProPayID}}</div>
       <div class="col">${{transaction.Amount}}</div>
       <div class="col"><button class="button-transaction" ng-click="openTransactionDetail(1)">Detail</button></div> …
Run Code Online (Sandbox Code Playgroud)

twitter-bootstrap angularjs ionic-framework

2
推荐指数
1
解决办法
2570
查看次数

内存数据库数据中的 Spring Boot 测试在测试之间不会持续存在

我正在尝试做一个测试套件来检查我拥有的 @oneToMany 关系

我有一个 book_category 和一本书,但我的问题是我在测试类中有几个小测试,似乎每次测试后都会删除数据库(H2)

这是我的代码

@Slf4j
@RunWith(SpringRunner.class)
@DataJpaTest
@TestPropertySource(locations="classpath:test.properties")
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public class BookServiceTest {

    @Autowired
    private BookService bookService;

    @Autowired
    private BookCategoryService categoryService;

    @Test
    @Order(1) 
    public void insertBookCategories() {
        BookCategory cat1 = new BookCategory();
        cat1.setCategoryCode(32);
        cat1.setCategoryName("Category 1");
        BookCategory cat2 = new BookCategory();
        cat2.setCategoryCode(323);
        cat2.setCategoryName("Category 2");
        categoryService.save(cat1);
        categoryService.save(cat2);
        List<BookCategory> categories = categoryService.findAll();
        assertEquals(2, categories.size());
        log.debug("Executed test number 1");
    }

    @Test
    @Order(2) 
    public void createBookWithCategory() {
        Book book = new Book();
        book.setDescription("Test Book");
        book.setNumberOfSales(5);
        book.setTitle("Test title");
        BookCategory cat = …
Run Code Online (Sandbox Code Playgroud)

junit spring-boot

0
推荐指数
1
解决办法
2423
查看次数