小编Mar*_*s B的帖子

如何配置私有Bitbucket存储库,以便我可以在composer.json中包含一个私有包?

我有一个私人Git存储库Bitbucket.org.它包含一个Laravel可以用作的项目composer package.我不想发布它,我只是希望能够通过将其Laravel包含在其他项目中来使用它composer.json.我搜索了很多关于stackoverflow的教程和问题/答案,但我仍然无法做到这一点.以下是我的composer.json文件中应该相关的部分:

"require": {
    "php": ">=5.6.4",
    "myprovider/mypackage": "*",
    "laravel/framework": "5.4.*",
    "laravel/tinker": "~1.0"
},
"repositories": {
    "myrepository": {
        "type": "vcs",
        "url": "https://bitbucket.org/me/myrepository/"
    }
},
Run Code Online (Sandbox Code Playgroud)

我试过了composer require myprovider/mypackage:*,但后来我收到了一个错误Could not fetch https://api.bitbucket.org/2.0/repositories/me/myrepository?fields=-project%2C-owner, please create a bitbucket OAuth token to access private repos.因为我实际创建的OAuth令牌之前,我粘贴所需要的Consumer KeyConsumer Secret后来我得到这个:

Invalid OAuth consumer provided.
This can have two reasons:
1. You are authenticating with a bitbucket username/password …
Run Code Online (Sandbox Code Playgroud)

git oauth bitbucket composer-php

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

如何仅在第一个HTTP请求完成时才触发新的http请求,并忽略/取消之间的所有其他请求

我正在使用Angular2制作SPA的前端,并且我有一个包含大量记录的数据库,并且数据库本身非常慢,因此获取10000条记录(或使用ORDER BY仅获取其中的最后10条)最多需要4- 5秒。在我的情况下,升级数据库不是一种选择。

所以我想做的是:当用户多次点击分页器的“下一步”按钮(onNextClick已经被调用)(假设他连续点击多达100次或更多)时,只会将第一个http请求发送到服务器/ API。现在是我无法弄清楚的部分:

当第一个请求返回结果时,则最后单击的事件将触发一个新请求,而忽略第一个和最后一个之间的所有其他单击请求(应忽略请求,而不是单击本身)。然后,如果用户仍在单击,则最后一次单击/请求将成为第一个,依此类推...

我尝试使用RxJS做到这一点,但是我只能通过使用interval来做到这一点,因此,如果interval是600 ms,并且用户每1000ms单击一次,则所有请求都将发送到服务器。这是我的代码:

 private clickStream = new Subject();

 ngOnInit() {
   this.clickStream
   .debounce(() => Observable.interval(600).take(1))
   .subscribe(
     params => {
       this.callHttpPostMethod();
     }
   );
 }

 onNextClick(event) {
     this.clickStream.next(event);
 }
Run Code Online (Sandbox Code Playgroud)

任何Angular2解决方案都将受到欢迎-不需要使用RxJS。

httprequest rxjs typescript angular

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

每次在.ts文件中添加断点时,Chrome都会在main.bundle.ts中打开相应的行

我正在开发一个Angular(v4.3.5)SPA,使用Angular CLI的ng serve命令为其提供服务,并通过Chrome Developer Tools进行调试.上周发生了一些奇怪的事情,我似乎无法做任何事情来改变它以前的方式:在Chrome开发工具中,当我点击行号在我的.ts文件中添加一个断点时,Chrome开发工具也打开相应的行main.bundle.ts,所以现在我每次添加一个断点我都要关闭main.bundle.ts或点击.ts文件标题.这很烦人.默认设置有什么新变化吗?因为我找不到任何相关的东西(虽然我甚至不确定如何谷歌这个问题...)

所以我的问题是:main.bundle.ts每次添加断点时,我该怎么办才能强制Chrome不打开?

编辑:我刚刚发现这个问题只有在我ng serve从Visual Studio Code终端运行时才会发生.

google-chrome-devtools webpack visual-studio-code angular-cli angular

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

当 http 响应状态为 400 时,使用 fetch api 获取自定义错误消息

我有 Python Flask (v 1.0.0) 后端,它返回状态为 400 的 http 响应和自定义错误消息

return Response('My custom errror message', 400)
Run Code Online (Sandbox Code Playgroud)

在我的前端,我使用 Fetch API 对后端进行了 API 调用:

fetch(url, options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(error => console.log(error));
Run Code Online (Sandbox Code Playgroud)

由于 400 是一个BAD REQUESTfetch直接进入catch,我所拥有的只是TypeError: Failed to fetch消息。

如何在前端获取自定义错误消息而不是Failed to fetch消息?它在 DevTools 中可见,所以我希望它应该以fetch某种方式可用?

在此处输入图片说明在此处输入图片说明

javascript http fetch-api

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

VsCode Exception has occurred: VariableDoesNotExist

VS Code throws exception when using debugger to run Django.

I got the same problem on two different projects that were working fine before. I can't recall any changes that would lead to this exception. It occurs when I try to open Django admin page.

Exception:

Exception has occurred: VariableDoesNotExist
Failed lookup for key [is_popup] in [{'True': True, 'False': False, 'None': None}, {'csrf_token': <SimpleLazyObject: '1XjSoBrvAaFZuOY9WTme5tXLO8awl43ORBO5YolUoHOlM0nOLDAfGd0atO3kh3dI'>, 'debug': True, 'sql_queries': <function debug.<locals>.<lambda> at 0x109638c80>, 'request': <WSGIRequest: GET '/login/?next=/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object …
Run Code Online (Sandbox Code Playgroud)

django visual-studio-code

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

如何使用一种通用方法迭代不同类型的字典?

我有一个HttpContext context和我迭代它的一些Request属性来收集信息.目前我是这样做的:

if (context.Request.Headers?.Keys != null)
{
    var items = new StringBuilder();
    foreach (var key in context.Request.Headers.Keys)
    {
        items.AppendLine(key + " = " + context.Request.Headers[key]);
    }
    result.Headers = items.ToString();
}
if (context.Request.Form?.Keys != null)
{
    var items = new StringBuilder();
    foreach (var key in context.Request.Form.Keys)
    {
         items.AppendLine(key + " = " + context.Request.Form[key]);
    }
    result.Form = items.ToString();
}
if (context.Request.Query?.Keys != null)
{
    var items = new StringBuilder();
    foreach (var key in context.Request.Query.Keys)
    {
        items.AppendLine(key + …
Run Code Online (Sandbox Code Playgroud)

c# generics asp.net-core

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