小编Hob*_*ist的帖子

错误:java:javacTask:源版本8需要目标版本1.8

使用IntelliJ IDE无法编译任何项目.以下设置的屏幕截图:

使用JDK:

http://gyazo.com/b6e32119af7b04090d890cad04db6373

项目SDK和语言级别:

http://gyazo.com/55a5fc9f7f2bb721a04780ce9d74eeab

语言水平:

http://gyazo.com/143bffad63fd89cafc231298729df2fc

有人有什么想法吗?

java intellij-idea java-8

826
推荐指数
10
解决办法
38万
查看次数

使用Axios下载图像并将其转换为base64

我需要从远程服务器下载.jpg图像并将其转换为base64格式.我正在使用axios作为我的HTTP客户端.我已经尝试向服务器发出一个git请求并检查response.data它,但它似乎不像那样工作.

链接到axios:https://github.com/mzabriskie/axios

链接到base64实现:https://www.npmjs.com/package/base-64

我正在使用NodeJS/React,所以atob/btoa不起作用,hense the library.

axios.get('http://placehold.it/32').then(response => {
    console.log(response.data); // Blank
    console.log(response.data == null); // False 
    console.log(base64.encode(response.data); // Blank
}).catch(err => console.log(err));
Run Code Online (Sandbox Code Playgroud)

javascript axios

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

Flexbox - 儿童扩展到填充高度

我的页面上有一个动态页脚,我希望它上面的内容可以扩展到页脚的顶部,这很好,但是我遇到了一个问题:

#snippet-container {
  height: 300px;
  width: 200px;
}

#page {
  display: flex;
  flex-flow: column;
  height: 100%;
}

#content {
  flex: 1 1 auto;
  background: blue;
}

#content .test {
  width: 100%;
  height: 100%;
  background: yellow;
  border: 2px solid red;
}

#footer {
  flex: 0 1 10vh;
  background: black;
}
Run Code Online (Sandbox Code Playgroud)
<div id="snippet-container">
  <div id="page">
    <div id="content">
      <div class="test"></div>
    </div>
    <div id="footer"></div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我希望.test元素填充#content元素,因此100%/100% width/height它不会.

当我.test在片段中为元素添加红色边框时,您可以看到这反映出来.

html css css3 flexbox

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

在swift中以编程方式向工具栏添加按钮

我很难在swift中向工具栏添加一个按钮,下面你可以看到我正在使用的工具栏图像,不幸的是即使我在Storyboard文件中设计了它,它也不会显示在将工具栏设置为可见.

我设计这个的方式是两个项目,第一个是flexable space元素,第二个是add元素.它看起来像这样:

在此输入图像描述

这是我用来尝试在代码中复制它的代码:

self.navigationController?.toolbarHidden = false
self.navigationController?.toolbarItems = [UIBarButtonItem]()
self.navigationController?.toolbarItems?.append(
    UIBarButtonItem(barButtonSystemItem: .FlexibleSpace, target: self, action: nil)
)
self.navigationController?.toolbarItems?.append(
    UIBarButtonItem(barButtonSystemItem: .Add, target: self, action: "onClickedToolbeltButton:")
)
Run Code Online (Sandbox Code Playgroud)

如您所见,我将工具栏设置为可见,初始化(和清除)UIBarButtonItem的toolbarItems数组,然后以正确的顺序将两个UIBarButtonItem添加到数组中.

但是,工具带仍然是空的,为什么会这样呢?

ios swift

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

单击HTML5 datalist选项时执行操作

我正在使用 <datalist>

<datalist id="items"></datalist>
Run Code Online (Sandbox Code Playgroud)

并使用AJAX填充列表

 function callServer (input) {
    xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange = function(){
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200){
            //return the JSON object
            console.log(xmlhttp.responseText);
            var arr = JSON.parse(xmlhttp.responseText);
            var parentDiv = document.getElementById('items');
            parentDiv.innerHTML = "";
            //fill the options in the document
            for(var x = 0; x < arr.length; x++) {
                var option = document.createElement('option');
                option.value = arr[x][0];
                option.innerHTML = arr[x][1];
                //add each autocomplete option to the 'list'
                option.addEventListener("click", function() {
                  console.log("Test");
                });
                parentDiv.appendChild(option);
            };

        } …
Run Code Online (Sandbox Code Playgroud)

javascript html5 dom-events html-datalist

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

当用户点击我的应用程序的Facebook邀请时,"找不到页面"

我不确定这是否与编程相关,但由于我没有Facebook SDK的经验,我只是假设我在某处做错了,即使我已经按照文档进行了操作T.

我正在为任何好奇的人使用Unity SDK,我使用FB.AppRequest将邀请发送到应用程序,我的应用程序中的代码看起来与文档中的代码完全相同.

public void InviteFriends() {
        FB.AppRequest(
            message: "Come play this great game!", 
            callback: LogCallback
        );
}

void LogCallback(FBResult result) {
    Debug.Log("Callback was called: " + result.Text);
}
Run Code Online (Sandbox Code Playgroud)

这会按预期显示该框,并允许我邀请朋友,并且该朋友确实获得了邀请,但是一旦他们点击邀请,他们就会被重定向到如下所示的页面:

在此输入图像描述

这给我带来了很多问题; 我已经检查了应用程序面板中的所有内容,似乎所有内容都已检出.我的Google Play游戏标识符和我的班级名称一样正确.我的关键哈希都是正确的.我不知道还能做些什么.如果您想在Play商店查找我的包标识符,buzz.qualify我相信您会轻松找到它.

我还要补充一点,我有一个应用程序页面,可以在这里找到:https://www.facebook.com/pages/Qualify/1647231425506903?fref = ts

此页面也链接到开发人员控制台中的facebook应用程序.

我该怎么做才能解决这个问题?它在代码中吗?请帮助,这是一个为期4天的挫折,因此我们正在迅速失去进展.

已经有几天了,我们现在付钱给某人通过PayPal修复.

android facebook unity-game-engine facebook-graph-api facebook-unity-sdk

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

可访问数据的Java约定.(公共访问者和获取者/命名)

通过Java API,您会看到许多冲突的命名和实践,这对我来说确实很困惑.

例如:

字符串类有名称的私有变量(整数),count它记录了串的大小,但是这是由吸气通过返回的名称length().

如果你转移到任何类型的数组,而不是长度的getter方法,他们只是通过公共访问器传递变量,它可以通过arrayInstance.length.

回到String类,我们有String#getBytes()一个getter方法,类似于length()getter,但是执行稍微更多的逻辑来获取并返回值.

对我个人来说,创建一个带有前缀的getter get似乎是多余的,例如我宁愿打字GamePacket#data(),GamePacket#getData()但是我觉得这个命名背后可能有更深层次的含义而不仅仅是不一致.

另外,为什么不Array[]使用吸气剂length

有人会对我有所了解吗?

java naming-conventions getter-setter

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

Firebase onAuthStateChanged回调有时需要20多秒

在离开我们自己的NodeJS后端运行快车后,我们一直在我们的应用程序上使用Firebase,在此过渡期间,我们注意到一个主要缺点.客户端接收初始身份验证状态所需的时间.

当我的应用程序打开时,我立即注册onAuthStateChanged回调以开始侦听身份验证状态的更改,这样我就可以将用户路由到他们的个人中心或身份验证屏幕.

问题是虽然有时这只需要几毫秒,但在其他时候(独立于互联网连接)它需要20秒以上,导致极差的用户体验.

我们在UIWebView组件上使用Firebase WEB API.

我已经在3G,4G,LTE和Wifi上进行了测试,这完全是随机的.有时它像闪电一样加载.有时它很慢,我质疑服务的可靠性.

有些人可能会说这是由于我们必须下载的用户数据,但我们等待的20-30秒是在我们甚至尝试从服务器提取数据之前.这只是为了获得初始授权状态.我们只使用电子邮件提供商.

有谁知道我们可以做些什么来改善这个?平均而言,onAuthStateChanged回调是562ms在应用程序执行后定义的.在此之后有时可能需要20-200ms(平均延迟),有时需要20000ms +

firebase firebase-authentication

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

将参数传递给promise链

我在通过我设置的承诺链传递参数时遇到了一些问题.这是我正在尝试做的一个基本的例子.

var dummyReq = { client: null };
var dummyUser = { email: 'user@secretdomain.com', password: 'admin' };

function printEmail(request, user) {
    return new Promise((resolve, reject) => {
        console.log('Email:', user.email);
        return resolve(request, user);
    });
}

function printPassword(request, user) {
    return new Promise((resolve, reject) => {
        console.log('Password:', user.password); // <-- user is undefined
        return resolve(request, user);
    });
}

printEmail(dummyReq, dummyUser)
    .then(printPassword)
    .catch(function(error) {
    console.log('Unexepected error has occured');
});
Run Code Online (Sandbox Code Playgroud)

在第二个promise中,参数user是未定义的,我如何通过promise链传递多个参数,因为这些promises继续将更多信息添加到链中,到最后我将5个值传递给最后一个promise.

我应该只使用ES6运算符将它们组合成一个对象并在每次调用时解构它们吗?例如return resolve({request, user})然后const { request, user } = param

javascript

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

客户端的HTTP状态代码已过期

我正在努力使REST API不再总是响应,如果出现问题,将在返回的JSON中STATUS: 200 OK包含一个error密钥,并在出现问题时尝试使用正确的状态代码。

到目前为止,我已经将服务器的大部分移动到了正确的状态代码 200, 201, 400, 401, 403, 404, 500, 501, and 503

目前,我正在尝试找出最有效的方法来拒绝过时的客户端对API调用的访问。目前,我正在发送使用授权令牌编码的客户端版本。

我被困在使用状态码之间426, and 412。426状态代码的标题似乎就像我想要的用例,但是描述让我有些担心。 412如果我将版本控制从授权令牌中移开,并将其放在自己的标头中,这似乎是合适的。

这是我的第一个REST API,并且效果很好,我只是想将其转换为遵循最佳实践。所以我有点困惑。

TLDR;

  • 我是否应该将版本控制移至标题并使用状态412
  • 我应该使用状态码426
  • 我在这里应该缺少用于请求客户端更新的代码吗?

注意:我的客户端不是Web浏览器。它是一种移动设备。

rest http

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