小编Jos*_*hin的帖子

HTTPS和SSL3_GET_SERVER_CERTIFICATE:证书验证失败,CA正常

我正在使用XAMPP进行开发.最近我将xampp的安装从旧版本升级到1.7.3.

现在当我卷曲启用HTTPS的网站时,我得到以下异常

致命错误:未捕获的异常'RequestCore_Exception',消息'cURL resource:Resource id#55; cURL错误:SSL证书问题,验证CA证书是否正常.详细信息:错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书验证失败(60)'

每个人都建议使用PHP代码中的一些特定curl选项来解决这个问题.我认为这不应该是这样的.因为我的旧版XAMPP没有任何问题,只是在安装新版本后才发生.

我需要帮助来弄清楚我的PHP安装中哪些设置发生了变化,Apache等可以解决这个问题.

php ssl curl openssl ca

206
推荐指数
6
解决办法
37万
查看次数

哈希与漠不关心的访问

我有一个非Rails项目,我在其中从YAML文件加载一些设置:

config = YAML::load(File.open("#{LOG_ROOT}/config/database.yml"))
Run Code Online (Sandbox Code Playgroud)

我只能访问这个哈希一样config["host"],config["username"]等等.

我想要无所谓的访问,所以我可以使用:host"host".

原因是,我传递此哈希的项目中的一个gem似乎是使用符号访问它,它当前失败了.

在这种情况下,创建具有无差别访问权限的哈希的最佳方法是什么?

ruby

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

Dalli vs Redis-Store for Rails App

我一直在使用Dalli进行缓存,今天我遇到了Redis -Store.

我想知道我应该切换到redisstore.我的应用程序已经使用redis来处理某些东西,所以我有一个redis服务器,它相当大(在资源方面),我还有另一个memcached服务器.因此,如果我在哪里切换到redis-store,那就意味着我可以删除memcached服务器(减少服务器维护+更少的成本).

有谁做过这两种解决方案的比较.

  1. 性能
  2. 它是一个直接替代品(我可以随时在这两个之间切换而无需更改代码)
  3. 我应该知道的任何其他东西.

memcached ruby-on-rails redis ruby-on-rails-3.1

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

Javascript for..in vs for loop performance

我使用kmean算法聚集了大约40000点.在程序的第一个版本中,我像这样编写了欧几里德距离函数

var euclideanDistance = function( p1, p2 ) { // p1.length === p2.length == 3
    var sum = 0;
    for( var i in p1 ){
        sum += Math.pow( p1[i] - p2[i], 2 );
    }
    return Math.sqrt( sum );
};
Run Code Online (Sandbox Code Playgroud)

整个程序非常缓慢,平均执行时间为7秒.经过一些分析后,我重写了上面这个函数

var euclideanDistance = function( p1, p2 ) { // p1.length === p2.length == 3
    var sum = 0;
    for( var i = 0; i < p1.length; i++ ) {
        sum += Math.pow( p1[i] - p2[i], 2 );
    }
    return Math.sqrt( …
Run Code Online (Sandbox Code Playgroud)

javascript

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

在Android中返回视频播放活动时出现黑屏

我正在开发Android应用程序ServeStream,我遇到了我无法修复的问题.我的应用程序将使用android MediaPlayer类流式传输音乐和视频.我在以下示例中找到了我的课程模型:

http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/media/MediaPlayerDemo_Video.html

这个例子和我自己的代码之间的区别是我的MediaPlayer在一个服务中运行,允许它在后台继续播放.示例android代码的问题是如果我正在观看视频并且我离开当前窗口/活动(即按下菜单按钮等)并返回到回放活动我得到黑屏但仍然从视频接收音频那是在玩.

最初创建回放活动时,将执行下面显示的代码.此代码实际上创建了用于播放的视图,然后将其绑定到媒体播放器:

        setContentView(R.layout.mediaplayer_2);
        mPreview = (SurfaceView) findViewById(R.id.surface);
        holder = mPreview.getHolder();
        holder.addCallback(this);
        holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
...
        mMediaPlayer.setDisplay(holder);
Run Code Online (Sandbox Code Playgroud)

重要的一行是mMediaPlayer.setDisplay(holder),因为它将当前视图/显示绑定到媒体播放器.离开活动时,视图("持有者")将被销毁.返回活动并重新创建视图后,再次执行mMediaPlayer.setDisplay(holder)似乎不会重新附加新创建的视图.显示黑屏而不是视频.

有没有人有解决此问题的解决方法或解决方案.我将不胜感激任何帮助或建议.

video android screen playback media-player

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

Android读取URL的内容(结果后缺少的内容)

我有以下代码来读取网址的内容

public static String DownloadText(String url){
    StringBuffer result = new StringBuffer();
    try{
        URL jsonUrl = new URL(url);

        InputStreamReader isr  = new InputStreamReader(jsonUrl.openStream());

        BufferedReader in = new BufferedReader(isr);

        String inputLine;

        while ((inputLine = in.readLine()) != null){
            result.append(inputLine);
        }
    }catch(Exception ex){
        result = new StringBuffer("TIMEOUT");
        Log.e(Util.AppName, ex.toString());
    }
        in.close();
        isr.close();
    return result.toString();
}
Run Code Online (Sandbox Code Playgroud)

问题是我返回结果中的4065个字符后缺少内容.有人可以帮我解决这个问题.

注意:我试图读取的URL包含一个json响应所以一切都在一行中我认为这就是为什么我缺少一些内容.

android httpwebrequest

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

程序,可执行文件和进程之间的区别是什么?

我想知道程序,可执行文件和进程之间的区别是什么?

unix operating-system

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

NPM:如何构建具有基于git的依赖关系的项目而无需调用“ git”命令?

我有一个使用git依赖项的NPM项目

{
  "repository": {
    "type": "git",
    "url": "https://bitbucket.org/my-private-group"
  },
  "dependencies": {
    "my-dependency": "bitbucket:group/lib#version",
  },
}
Run Code Online (Sandbox Code Playgroud)

现在,我想使用已安装节点的Docker 在CI中构建此项目

问题: 由于git不存在,因此node install尝试调用git并失败。但是,即使我安装了git,它仍然需要身份验证,因为它是一个私有存储库。

目前,我看到以下解决方案:

  • 我将不得不在docker中安装git并添加一个SSH密钥才能下载源代码。
  • 我可以将相关的存储库打包到Docker映像中并使用npm link。但是,此选项仍然需要了解设置的依赖关系,package.json从而使其变得复杂。
  • 设置自己的npm存储库以发布工件,并且不使用git依赖项。不幸的是,在我的情况下无法实现此选项。

问题:在CI中处理git依赖关系的最佳方法是什么?列出的选项中是否还有其他任何选项。最佳做法是什么?

node.js npm jenkins docker

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

如何存根aws-sdk

可以说我有以下内容

// file sample.js
var aws = require('aws-sdk');
var dynamoDB = new aws.DynamoDB();

exports.processData = function(){
  var data = dynamoDB.getItem(params);
  // so something with data
};
Run Code Online (Sandbox Code Playgroud)

如何为上面的代码示例编写单元测试.

//file sample_test.js
var aws = require('aws-sdk');
var sinon = require('sinon');

// the following code doesnt seem to stub the function
// the actual function is still used in sample.js
var getItemStub = sinon.stub();
aws.DynamoDB.prototype.getItem = getItemStub;

var sample = require('./sample');
Run Code Online (Sandbox Code Playgroud)

什么是存储aws-sdk api的好方法.我正在考虑使用SinonJS来实现它,但我对其他图书馆和建议开放态度.

javascript node.js sinon aws-sdk

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

Android从相机获取图像Uri

我有一个应用程序调用Android手机的默认相机拍照,以下是我的代码.

                Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            startActivityForResult(intent, TAKE_PICTURE);
Run Code Online (Sandbox Code Playgroud)

在onActivityResult方法中,我正在执行以下操作

        if ((requestCode == TAKE_PICTURE) && (resultCode == Activity.RESULT_OK)) {
        Uri photoPath = intent.getData();
                    // do something with the uri here
            }
Run Code Online (Sandbox Code Playgroud)

以上代码在htc Tatto和索尼爱立信x10运行1.6上工作正常但在htc G1上运行1.6以上代码导致以下异常

        03-08 18:54:25.906: ERROR/AndroidRuntime(4344): Uncaught handler: thread main exiting due to uncaught exception
    03-08 18:54:25.966: ERROR/AndroidRuntime(4344): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=Intent { act=inline-data (has extras) }} to activity  removed
java.lang.NullPointerException
    03-08 18:54:25.966: ERROR/AndroidRuntime(4344):     at android.app.ActivityThread.deliverResults(ActivityThread.java:3224)
    03-08 18:54:25.966: ERROR/AndroidRuntime(4344):     at android.app.ActivityThread.handleSendResult(ActivityThread.java:3266)
    03-08 18:54:25.966: ERROR/AndroidRuntime(4344):     at android.app.ActivityThread.access$2600(ActivityThread.java:116) …
Run Code Online (Sandbox Code Playgroud)

android

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

JSONObject到JSONArray

我需要一些帮助.我还是Android开发人员的新手.

这是数据的示例

strAPI_TERMINAL= "{ 'terminal': { 'id': 2, 'fmt_id': 'fmt0002', 'terminal_type': 'multiple' }}"
Run Code Online (Sandbox Code Playgroud)

我需要将此对象数据解析为JSONArray

在这里我做了什么......

JSONObject jsonObject = new JSONObject(strAPI_TERMINAL);
JSONArray terminal_array = new JSONArray();
JSONArray t_array = terminal_array.put(jsonObject);
Run Code Online (Sandbox Code Playgroud)

当我注销数据时...是的,就像这样解析数组

t_array[{"terminal":{"fmt_id":"fmt0002","id":2,"terminal_type":"multiple"}]

但当我想使用它来获取"终端"数据时...

JSONArray TERMINAL_JSON=new JSONArray(t_array.getJSONObject(i).getString("terminal").toString());
Run Code Online (Sandbox Code Playgroud)

它说:

Error:Value {"id":2,"fmt_id":"fmt0002","terminal_type":"multiple"} 
Run Code Online (Sandbox Code Playgroud)

有人请帮帮我???

谢谢你的帮助...

arrays android jsonobject

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

Socket.IO 中的套接字引用

我是 nodejs 的新手,正在试验 socket.io。我正在尝试向特定的套接字发送消息,所以我想我会存储对套接字的引用。

var controls = {};
var clients = {};

var control = io
  .of("/control")
  .on("connection", function(socket){
    socket.on("connect_player", function(data){
      var id = data.screen_id;
      controls[socket.id] = id;
    });

    socket.on("msg", function(data){
      id = controls[socket.id]
      player.socket(clients[id]).emit("msg", data);
    });
  });

var player = io
  .of("/player")
  .on("connection", function(socket){
    socket.on("set_id", function(id){
      clients[id] = socket.id
    });
  });
Run Code Online (Sandbox Code Playgroud)

我首先启动一个连接到“播放器”命名空间并显示一个 id(硬编码)的网页。然后另一个网页连接到与播放器具有相同 id 的“控制”命名空间,现在控制器应该能够向该特定播放器发送消息,但这会工作一段时间然后失败。

在它工作期间,我可以将消息从控制页面发送到特定的播放器页面。

在播放器停止工作后,我查看了播放器命名空间中的套接字 ID,发现套接字 ID 与初始 ID 不同。

我想我在这里做错了什么或者对概念有错误的理解。我该如何解决这个问题。

编辑:

我为“重新连接”事件添加了侦听器,发现 socket.id 的值在每个“重新连接”事件之后都会发生变化。因此控件和客户端具有无效的 socket.id 值,这导致了我的问题。有没有办法克服这个。

node.js socket.io

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