小编Den*_*nov的帖子

CORS策略阻止了对来自"null"的映像的访问

我在OpenLayers 3中有JavaScript应用程序,我的基础层是从本地磁贴创建的.我只在我的电脑上工作所以我不知道为什么我有CORS错误.

    var newLayer = new ol.layer.Tile({
    source: new ol.source.OSM({
        url: 'E:/Maperitive/Tiles/vychod/{z}/{x}/{y}.png'
    })
});
var schladming = [21.6187, 48.7327]; // longitude first, then latitude
// since we are using OSM, we have to transform the coordinates...
var schladmingWebMercator = ol.proj.fromLonLat(schladming);

var map = new ol.Map({
    layers: [
        newLayer
    ],
    controls: [],
    target: 'mapid',
    view: new ol.View({
        center: schladmingWebMercator,
        zoom: 10,
        minZoom: 10,
        maxZoom: 14
    })
});
Run Code Online (Sandbox Code Playgroud)

控制台的错误消息:

CORS策略阻止了file:///E:/Maperitive/Tiles/vychod/10/573/352.png 从原点访问映像null:响应无效.null因此不允许原点访问.

当我双击图像URL时,图像被打开.有什么想法有什么不对?我之前从未遇到过这个错误.

javascript local cors openlayers-3

48
推荐指数
8
解决办法
15万
查看次数

如何在 Nuxt 2 或 3 中使用 .env 变量?

我的项目根目录中有 .env 文件,在我的 nuxt 配置中,我使用变量来配置 ReCaptcha,如下所示:

import dotenv from 'dotenv'
dotenv.config()

export default {
    modules: [
        ['@nuxtjs/recaptcha', {
          siteKey: process.env.RECAPTCHA_SITE_KEY,
          version: 3,
          size: 'compact'
        }],
    ]
}
Run Code Online (Sandbox Code Playgroud)

在 .env 中像这样:

RECAPTCHA_SITE_KEY=6L....
Run Code Online (Sandbox Code Playgroud)

但应用程序总是失败并出现控制台日志错误:

ReCaptcha 错误:未提供密钥

当我像这样直接硬编码 ReCaptcha 密钥时:siteKey: 6L....应用程序开始工作,所以我猜问题在于读取 nuxt.config 中的 .env props

你知道如何解决它吗?

编辑:我尝试通过@kissu推荐和我在这里找到的示例更新我的nuxt.config: https: //www.npmjs.com/package/@nuxtjs/recaptcha

所以有新的 nuxt.config 也不起作用:

export default {
    modules: [
       '@nuxtjs/recaptcha',
    ],
    publicRuntimeConfig: {
       recaptcha: {
         siteKey: process.env.RECAPTCHA_SITE_KEY,
         version: 3,
         size: 'compact'
       }
  }
}
Run Code Online (Sandbox Code Playgroud)

javascript recaptcha vue.js vuejs2 nuxt.js

32
推荐指数
3
解决办法
7万
查看次数

Bootstrap 4布局,一个宽度固定列

这是我的HTML代码:

<div class="container-fluid d-flex h-100">
  <div class="white h-100" style="background-color: white;">
    fixed 100px
  </div>
  <div class="col-3 blue h-100" style="background-color: blue;">
    3
  </div>
  <div class="col-6 red h-100" style="background-color: red;">
    6
  </div>
  <div class="col-3 blue h-100" style="background-color: blue;">
    3
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

你能帮我解决一下我的代码吗?我需要在左侧柱上固定宽度,这将是100px.此列未调整大小.我需要的其余空间应该以1:2:1的比例动态调整.感谢您的帮助.

html css twitter-bootstrap

22
推荐指数
3
解决办法
2万
查看次数

如何使用docker volume在Tomcat中部署war/jar

是否可以在Tomcat中部署一些java war或jar文件?我寻找了很多教程,我发现的唯一解决方案是将项目战争文件复制到/usr/local/tomcat/webapps/.

我实际上使用了这个解决方案,但我想改进我的dockerisation.我的主要目标是当我使用docker-compose运行我的2个图像(tomcat和db image中的应用程序)时,我想在tomcat中使用目标文件夹的本地war文件,当我在代码更改后再次构建war时,将在不停止容器,移除和重建的情况下进行反映.你可以帮忙吗?我的尝试失败了.我希望它仅用于开发目的.

这是我的docker-compose.yml

version: '3'

services:

  tomcat-service:
    build:
      context: ../
      dockerfile: docker/app/Dockerfile
    volumes:
      - D:\myproj\target\app.war:/usr/local/tomcat/webapps/ROOT.war
    ports:
      - "8080:8080"
    depends_on:
      - "db-service"

  db-service:
    build: ./database
    ports:
      - "5433:5432"
Run Code Online (Sandbox Code Playgroud)

和那个tomcat的Dockerfile

FROM tomcat:8.0-jre8
RUN rm -rvf /usr/local/tomcat/webapps/ROOT
COPY ./docker/app/context.xml /usr/local/tomcat/conf/
# with following copy command it works, but when I rebuild war file, I need stop docker-compose and build and run it again .. I want use volume instead of copy war
#COPY ./pnp-web/target/pnp.war /usr/local/tomcat/webapps/ROOT.war
EXPOSE 8080
CMD ["catalina.sh", …
Run Code Online (Sandbox Code Playgroud)

java tomcat docker docker-compose

15
推荐指数
2
解决办法
7592
查看次数

Android - 无法安装*smartsocket*监听器

当我尝试运行我的Android应用程序时,我得到以下异常:

等待设备时出错:java.lang.RuntimeException:无法创建调试桥:无法启动adb服务器:错误:无法安装smartsocket侦听器:无法绑定到127.0.0.1:5037:尝试访问套接字一种被其访问权限禁止的方式.(10013)无法从ADB Server*读取确定无法启动守护程序*错误:无法连接到守护程序'C:\ Users\XXX\AppData\Local\Android\Sdk\platform-tools\adb.exe,start-server'失败 - 必要时手动运行

所以我尝试使用这些命令手动完成:

adb kill-server

  • 响应:*服务器未运行*

adb start-server

  • 响应是下一个例外:

*守护程序没有运行.现在在端口5037上启动*错误:无法安装smartsocket侦听器:无法绑定到127.0.0.1:5037:尝试以其访问权限禁止的方式访问套接字.(10013)无法从ADB服务器读取确定

*无法启动守护程序*错误:无法连接到守护程序

我在我的任务管理器中寻找adb进程但没有运行.有任何想法吗?谢谢.

sockets android adb android-studio

13
推荐指数
3
解决办法
3万
查看次数

在不增加执行时间的情况下多次调用返回DeferredResults的异步服务

我的应用程序应该有2个核心端点:push,pull for sending和fetching data.

拉操作应该异步工作并产生DeferredResult.当用户通过休息调用pull service时,会创建新的DefferedResult并将其存储到Map<Long, DefferedResult> results = new ConcurrentHashMap<>()等待新数据的位置或直到超时到期.

推送操作也会呼叫用户过度休息,此操作会检查此操作所推送的数据接收者的结果映射.当map包含收件人的结果时,这些数据被设置为他的结果,返回DefferedResult.

这是基本代码:

@Service
public class FooServiceImpl {
    Map<Long, DefferedResult> results = new ConcurrentHashMap<>();

    @Transactional
    @Override
    public DeferredResult<String> pull(Long userId) {
        // here is database call, String data = fooRepository.getNewData(); where I check if there are some new data in database, and if there are, just return it, if not add deferred result into collection to wait for it
        DeferredResult<String> newResult = new DeferredResult<>(5000L);
        results.putIfAbsent(userId, …
Run Code Online (Sandbox Code Playgroud)

java spring spring-transactions spring-boot spring-async

11
推荐指数
1
解决办法
2078
查看次数

使用ngx-scrollbar获取ngx-bootstrap的选项卡内容

在我的项目中,我使用的是bootstrap 4和ngx-bootstrap.现在我需要创建一个包含2个可滚动div的组件,由制表符切换.

我想在stackblitz中展示一个示例应用程序,但我无法创建它.

所以这是我要放置这些标签的组件:

<div class="d-flex flex-column h-100">
  <div class="border-bottom align-items-center d-flex flex-shrink-0 pr-3 pl-3" style="height: 60px !important;">
    <input type="text" class="form-control" id="search" placeholder="Search...">
  </div>
  <tabset [justified]="true">
    <tab heading="Title 1">
      <ng-scrollbar [autoHide]="true">
        <app-foo-list></app-foo-list>
      </ng-scrollbar>
    </tab>
    <tab class="" heading="Title 2">
      <ng-scrollbar [autoHide]="true">
         <app-foo-list></app-foo-list>
      </ng-scrollbar>
    </tab>
  </tabset>
</div>
Run Code Online (Sandbox Code Playgroud)

在AppFooList组件中,我将放置一个项目列表.例如,它类似于以下代码:

    hiiiiiiii <br>
    hiiiiiiii <br>
    hiiiiiiii <br>
    hiiiiiiii <br>
    ...
Run Code Online (Sandbox Code Playgroud)

你可以帮我修改我的代码,使其正常工作吗?Ngx滚动条不适用于标签的内容.我的所有尝试都以滚动整个应用程序结束,因为内容的高度比应用程序的其余部分高,或者内容可滚动但是ngx滚动条未应用且滚动条很难看.我需要div的高度作为底部空间的其余部分.这就是我使用flexbox的原因.

编辑: stackblitz中的代码

css flexbox twitter-bootstrap ngx-bootstrap angular

9
推荐指数
1
解决办法
2229
查看次数

迭代 Typescript 中的枚举项

如何在 TypeScript 中迭代枚举项?我尝试了 for-in,但这会迭代字符串。我需要为每个枚举值调用一个函数。

for (const foo in FooType) {
    // here I have error that string is not assignable to parameter of type FooType
    this.doCalculation(foo)
}


private doCalculation(value: FooType): void {
   // some logic
}
Run Code Online (Sandbox Code Playgroud)

枚举FooType看起来像这样:

export enum SupportedFiat {
  VALUE_A = 'VALUE_A',
  VALUE_B = 'VALUE_B',
  VALUE_C = 'VALUE_C'
}
Run Code Online (Sandbox Code Playgroud)

enums typescript

9
推荐指数
1
解决办法
1万
查看次数

如何在 Spring Boot 2 中保护具有角色的执行器端点?

您能帮助保护 Spring Boot 2 中的执行器端点吗?我检查了迁移指南,但它对我没有帮助。

这是我的安全配置:

@Configuration
@EnableWebSecurity
public class SecConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .requestMatchers(EndpointRequest.toAnyEndpoint()).hasRole("ADMIN")    
                .anyRequest().authenticated();
    }

}
Run Code Online (Sandbox Code Playgroud)

但是当我去http://localhost:8080/actuator/health它加载时无需登录。其他带有前缀的端点/actuator也不需要登录。我做错了什么?

我还使用此配置添加了 OAuth:

@Configuration
@EnableAuthorizationServer
public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdapter {
    @Override
public void configure(ClientDetailsServiceConfigurer clients) throws Exception {
    clients
            .inMemory()
                .withClient("client-id")
                    .scopes("read", "write")
                    .authorizedGrantTypes("password")
                    .secret("xxxxxx")
                    .accessTokenValiditySeconds(6000);
}
}

@Configuration
@EnableResourceServer
public class ResourceServerConfig extends ResourceServerConfigurerAdapter {

    @Override
    public void configure(HttpSecurity http) throws Exception {
       http
            .sessionManagement()
                .sessionCreationPolicy(SessionCreationPolicy.STATELESS) …
Run Code Online (Sandbox Code Playgroud)

java spring spring-security spring-boot spring-boot-actuator

7
推荐指数
1
解决办法
6286
查看次数

在微服务架构中组织用户和身份验证

在我们的微服务中,我们将拥有自定义身份验证/授权服务,又名 UAA,对吗?使用用户控制器来登录、令牌验证或创建用户对我来说很有意义。

但还有第二个用例。我们还希望有一些用户管理功能,用于向用户添加收藏夹联系人、使用一些附加信息、用户地址等填充个人资料。在第二个用例中,我希望为此目的提供第二个微服务。您有什么建议或最佳实践是什么?

  1. 有一个用于用户管理的微服务,例如他的个人资料、联系人、凭据以及登录/令牌提供

  2. 有两个微服务 - 一个用于管理用户凭据、令牌提供(uaa),第二个用于用户附加信息

  3. 有两个微服务 - 一个用于完全独立的用户管理,第二个用于身份验证、令牌提供,并且如果需要一些用户数据或验证用户凭据,则将使用用户服务的其余 api

对我来说,3.选项很好,但我想听听你的意见。

architecture authentication spring authorization microservices

7
推荐指数
1
解决办法
1万
查看次数