小编Rya*_*iss的帖子

Hot Module Reloading 使初始页面请求需要 10-20 秒,使用 Webpack、Koa、Vue.js

出于某种原因,大多数页面刷新会重新请求 bundle.js 文件,从本地主机下载大约需要 10-15-20 秒。这一切都来自本地主机,并且 bundle.js 文件大小约为 1mb。对这个文件的请求似乎只是爬行,一次加载几千字节。

一些观察:

  • 经过一番挖掘,它似乎在从 __webpack_hmr 对服务器的初始调用中停滞不前,但我不确定这个调用是在调用 bundle.js 之后发生的。下面是服务器请求流的日志。

  • 只有在具有超过一两个组件的页面上才会变慢,即。主页以外的任何内容。这暗示了它可能与热模块重新加载有关的想法。

  • 主页仍然需要 5 秒(有时 10-20 秒),就像其他页面一样,但如果我用 Ctrl+R 刷新页面,它几乎立即返回。如果我进行地址栏刷新,则需要更长的时间。无论我是 Ctrl+R 还是重新加载地址栏,其他页面仍然需要同样长的时间......
  • 更新:我删除了热模块替换,这似乎是问题的根源,因为没有它,页面会立即加载。

请求日志:

-响应时间GET / = 609ms
- > GET / 200 647ms 2.55kb
< - GET /main.aafc9fb7f6a0c7f127edb04734d29547.css
- > GET /main.aafc9fb7f6a0c7f127edb04734d29547.css 200 17MS 3.43kb
< - /bundle.js
- > GET /bundle.js 200 18ms 1.29mb
<-- GET /__webpack_hmr

然后在 chrome 控制台中,对于这个请求,它显示: 在此处输入图片说明

这是我的设置:

  • 使用 Koa 作为服务器环境(在初始响应中使用流/分块)
  • 使用带有热模块重新加载的 webpack
  • 使用 Vue.js 作为前端框架,具有服务端渲染
  • bundle.js 通过典型的 serve-static 包提供
  • bundle.js 似乎根本没有被缓存。为什么是这样? …

localhost node.js koa webpack webpack-hmr

6
推荐指数
0
解决办法
666
查看次数

实时站点上的CodeIgniter未加载控制器类

我正在尝试在生产服务器上设置我的网站,并且基本上在/system/core/CodeIgniter.php中的第291行崩溃:

//instantiate the requested controller

// Mark a start point so we can benchmark the controller
$BM->mark('controller_execution_time_( '.$class.' / '.$method.' )_start');

$CI = new $class();
Run Code Online (Sandbox Code Playgroud)

该类是“ auth”(来自tank_auth库),因此在“ $ CI = new auth();”上崩溃。

它不会产生错误(为什么?),仅显示空白页。所有这些在本地都可以正常工作。

有没有人有类似的问题?

php codeigniter

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

CodeIgniter无法实例化控制器类

所以我试图解决为什么CodeIgniter不会显示任何输出(除了404等).我已经检查了从错误登录php和apache和codeigniter到模块重写的所有内容.一切似乎配置得很好.

我开始深入研究CodeIgniter核心文件,并注意到它在下面的行上崩溃,试图实例化所请求的控制器类:

        $class  = $RTR->fetch_class();
        $method = $RTR->fetch_method();

echo 'looking for class: ' . $class . '<br/>';
if(class_exists($class) == false) {

                )
        {
                echo 'class does not exist: ' . $class;
                show_404("{$class}/{$method}");
        }
}

/*
 * ------------------------------------------------------
 *  Is there a "pre_controller" hook?
 * ------------------------------------------------------
 */
        $EXT->_call_hook('pre_controller');
echo '<br/>after precontroller';
/*
 * ------------------------------------------------------
 *  Instantiate the requested controller
 * ------------------------------------------------------
 */
        // Mark a start point so we can benchmark the controller
        $BM->mark('controller_execution_time_( '.$class.' / '.$method.' )_start');

echo '<br/>before class …
Run Code Online (Sandbox Code Playgroud)

codeigniter

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

在客户端代码中未定义Bluebird promise resolve(数据)

Hiyas.我有一个简单的应用程序,其中客户端期望作为结果的承诺,但在调用resolve()方法时,promise将继续返回undefined作为结果.

客户端代码:

UsersRepo.findOneAsync({id: id}).then(function(err, result) {
    console.log("UserService promise resolution", err, result);
});
Run Code Online (Sandbox Code Playgroud)

对于错误和结果,它分别输出"null"和"undefined"

正在进行工作并返回承诺的代码:

findOneAsync: function(args) {
    var where = ""; //omitted

    var promise = new Promise(function(resolve, reject) {
        db.query("Select * from users" + where + " limit 1", function(err, result) {
            var res = { id: 1, username: 'username', firstName: 'First', lastName: 'Last' };

            if(err != null) {
                console.log("REJECT", err);
                reject(err);
            }
            else {
                console.log("RESOLVE", res);
                resolve(null, res);
            }
        });
    });

    return promise;
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我只是为此测试返回一些静态数据('res'变量).在客户端代码中,控制台语句始终打印出:

UserService promise resolution null …
Run Code Online (Sandbox Code Playgroud)

javascript node.js promise bluebird

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

PHP $_GET 未从 Web 浏览器填充 URL 查询参数

我遇到了一个奇怪的问题,其中$_GET(and $_REQUEST) 变量为空,即使正在传递参数。

我的PHP代码:

echo $_SERVER['REQUEST_URI'];
echo print_r($_REQUEST);
echo print_r($_GET);
Run Code Online (Sandbox Code Playgroud)

输出:

/service/getAllOrders?sortBy=date_created&sortDir=desc
Array()
Array()
Run Code Online (Sandbox Code Playgroud)

我正在使用 nginx 并将所有请求转发到 index.php。我的配置如下:

server {
    listen       80;
    server_name  decaro.localhost;
    root       /Users/rweiss/Sites/decaro/LocalOrderWebsite;

   #access_log  /usr/local/etc/nginx/logs/default.access.log  main;

    location / {
        add_header Cache-Control "no-cache, no-store";
        include   /usr/local/etc/nginx/conf.d/php-fpm;
        try_files $uri $uri/ /index.php$args;
    }

    location /assets/ {
        allow all;
    }

    location = /info {
        allow   127.0.0.1;
        deny    all;
        rewrite (.*) /.info.php;
    }

    error_page  404     /404.html;
    error_page  403     /403.html;
}
Run Code Online (Sandbox Code Playgroud)

为什么?

php get nginx query-parameters

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

TypeORM+nestjs:如何使用父泛型、单个控制器、存储库、子类型验证来序列化+CRUD子实体类?

我一直很难让子实体使用 REST api 自动工作。

我有一个基类:

class Block {

    @PrimaryGeneratedColumn('uuid')
    public id: string;

    @Column()
    public type: string;

}
Run Code Online (Sandbox Code Playgroud)

然后将其扩展到其他块类型,例如:

@Entity('sites_blocks_textblock')
class TextBlock extends Block {

    @Column()
    public text: string;

}
Run Code Online (Sandbox Code Playgroud)

我让每个块类型都有自己的实体,以便列可以正确序列化到数据库,并对每个属性进行验证。

所以...我有 10 多个块类型,并且我试图避免使用单独的控制器和 CRUD 端点来每个块类型。我只想要一个 BlockController、一个 /block 端点、POST 来创建,然后 PUT 到 /block/:id 上进行更新,这样它就可以从请求的“type”主体参数推断出块的类型。

问题是,在请求中,最后一个 @Body() 参数将不会验证(请求不会通过),除非我使用类型“any”...因为每个自定义块类型都传递它的额外/自定义属性。否则,我将不得不使用每个特定的 Block 子类作为参数类型,需要为每种类型提供自定义方法。

为了实现这一目标,我尝试使用自定义验证管道和泛型,我可以在其中查看传入的“类型”主体参数,并将传入数据强制转换或实例化为特定的块类型。

控制器处理程序:

@Post()
@UseGuards(PrincipalGuard)
public create(@Principal() principal: User,
          @Param('siteId', ParseUUIDPipe) siteId: string,
          @Body(new BlockValidationPipe()) blockCreate: any): Promise<Block> {

    return this.blockService.create(principal.organization, siteId, blockCreate);

}
Run Code Online (Sandbox Code Playgroud)

BlockValidationPipe(这应该将传入数据对象转换为特定的块类型,然后验证它,以该类型返回传入数据对象):

@Injectable()
export class BlockValidationPipe implements PipeTransform<any> {
    async …
Run Code Online (Sandbox Code Playgroud)

generics typescript typeorm nestjs

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