小编php*_*_qq的帖子

HTTP Content-Type标头和JSON

好的,所以我一直在努力避免使用大多数HTTP协议的属性,或者为了害怕未知,你怎么可能请它们调用它们.但是我告诉自己,我今天将面临恐惧并开始有目的地使用标题.我一直试图在这里实现的是将json数据发送到浏览器并立即使用它.例如,如果我在就绪状态4上有一个ajax处理函数,看起来像这样

function ajaxHandler(response){
    alert(response.text);
}
Run Code Online (Sandbox Code Playgroud)

我在我的php中设置了内容类型标题

header('Content-Type: application/json');
echo json_encode(array('text' => 'omrele'));
Run Code Online (Sandbox Code Playgroud)

我的问题是:为什么我不能直接从处理函数访问属性,当浏览器被明确告知传入的数据是application/json

javascript php json http

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

CSS Transition不适用于top,bottom,left,right

我有一个风格元素

position: relative;
transition: all 2s ease 0s;
Run Code Online (Sandbox Code Playgroud)

然后我想在点击它之后平滑地改变它的位置,但是当我添加样式改变时,转换不会发生,而是元素立即移动.

$$('.omre')[0].on('click',function(){
    $$(this).style({top:'200px'});
});
Run Code Online (Sandbox Code Playgroud)

但是,如果我更改color属性,它会顺利更改.

$$('.omre')[0].on('click',function(){
    $$(this).style({color:'red'});
});
Run Code Online (Sandbox Code Playgroud)

可能是什么原因造成的?是否存在不属于"过渡性"的属性?

编辑:我想我应该提到这不是jQuery,它是另一个库.代码似乎按预期工作,样式正在添加,但转换仅适用于第二种情况?

javascript css transition

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

Javascript相当于对象模型中的destruct

由于我用javascript的时髦"对象模型"处理过去,我认为没有析构函数这样的东西.我的搜索有点不成功,所以你们是我最后的希望.如何在实例销毁时执行内容?

javascript destructor

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

在websocket握手上使用会话数据

如果登录用户导航到要使用WebSockets的站点的某个区域,我如何获取该会话ID以便我可以在服务器上识别他?

我的服务器基本上是一个无休止的while循环,它保存有关所有连接用户和东西的信息,所以为了获取该id,我认为唯一合适的时刻是握手,但不幸的是握手的请求头不包含cookie数据:

请求标题

接受:text/html,application/xhtml + xml,application/xml; q = 0.9,/ ; q = 0.8
Accept-Encoding:gzip,deflate Accept-Language:en-US,en; q = 0.5
Cache-Control:no -cache
连接:keep-alive,升级
DNT:1
主机:192.168.1.2 :9300
原产地:http://localhost
Pragma:no-cache
Sec-WebSocket-Key:5C7zarsxeh1kdcAIdjQezg ==
Sec-WebSocket-Version:13
升级:websocket
用户代理:Mozilla /5.0(Windows NT 6.1; WOW64; rv:27.0)Gecko/20100101 Firefox/27.0

那么我怎么能真正抓住那个id呢?我以为我可以以某种方式强制javascript发送cookie数据以及该请求,但2014年任何自尊的网站将有httpOnly会话cookie,以便不会解决.任何帮助是极大的赞赏!

这是我正在使用的服务器文件的下载链接http://www.4shared.com/rar/7RIos1tuce/PHPWebSocket-Chat-master.html

php session websocket

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

反应this.props是未定义的

我有一个非常标准的设置,一个带页面的路由器

import React from "react";
import ReactDOM from "react-dom";
import { IndexRoute, Router, Route, Link, hashHistory as history } from "react-router";

import Layout from "./pages/Layout";
...
import User from "./pages/User";

ReactDOM.render(
    <Router history={history}>
      <Route path="/" component={Layout}>
        <IndexRoute component={...}/>
        <Route path="project/create" component={...}/>
        <Route path="project/:id" component={...}/>
        <Route path="user/:id" component={User}/>
        <Route path="*" component={...}/>
      </Route>
    </Router>,
    document.getElementById("app-root"));
Run Code Online (Sandbox Code Playgroud)

除非我去一个页面像一切都可以正常使用site.tld/#/user/5User组件有一些麻烦正确实例.所有其他页面都在工作,我还有另一个页面使用url参数(project/:id),它也正常工作.

import React from "react";
...

export default class User extends React.Component {

  constructor() {
    super();

    console.log(this);

    ...
  }

  render() { …
Run Code Online (Sandbox Code Playgroud)

reactjs

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

将URL转换为json

我似乎找不到这个问题的答案..如何在javascript中将URL参数字符串转换为JSON?我的意思是问是否有像这样的内置功能或单线程可以完成这项工作?

例:

some=params&over=here => {"some":"params","over":"here"}

javascript url json

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

SQLSTATE [HY093]:参数号无效:没有绑定参数,但提供了参数

我正在构建一个数据库对象,它将PDO对象与PDOStatement对象连接起来,以便链接可用.基本上我只是把我经常使用的方法,但bindParam给我一个艰难的时间.

private $stmt = null;

...

public function prepare($statement,array $driver_options = array()) {
    if($this->stmt) throw new \Exception('PDO Statement already prepared, no override!');
    $this->stmt = parent::prepare($statement, $driver_options);
    return $this;
}

public function bindParam($place, &$val, $dataType){
    if(!$this->stmt) throw new \Exception('PDO Statement is empty');
    $this->stmt->bindParam($place, $val, $dataType);
    return $this;
}

public function execute(array $params = array()){
    if(!$this->stmt) throw new \Exception('PDO Statement is empty');
    $this->stmt->execute($params);
    return $this;
}

public function fetchAll($pdoFetchType){
    if(!$this->stmt) throw new \Exception('PDO Statement is empty'); …
Run Code Online (Sandbox Code Playgroud)

php pdo

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

JavaScript对象中的空插槽?

最近我开始在firefox'控制台中看到这个

Object [ <6 empty slots>, false, <3 empty slots>, 1 more… ]
Run Code Online (Sandbox Code Playgroud)

当我有一个像这样的对象

{
  6: false,
  10: true
}
Run Code Online (Sandbox Code Playgroud)

我只想要一个带有数字键的对象,我可以访问,但我很担心这个,因为如果它跟踪空槽,那么这必然意味着浪费了一些内存?

我的关注是否有效,如果是,那么定义这样一个对象的正确方法是什么?

javascript

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

NotReadableError:无法启动源代码

我在我的项目中添加了这段代码

if (navigator.mediaDevices === undefined) {
  navigator.mediaDevices = {};
}

if (navigator.mediaDevices.getUserMedia === undefined) {
  navigator.mediaDevices.getUserMedia = function (constraints) {

    var getUserMedia = (
      navigator.getUserMedia ||
      navigator.webkitGetUserMedia ||
      navigator.mozGetUserMedia
    );

    if (!getUserMedia) {
      return Promise.reject(new Error('getUserMedia is not implemented in this browser'));
    }

    return new Promise(function (resolve, reject) {
      getUserMedia.call(navigator, constraints, resolve, reject);
    });

  };
}
Run Code Online (Sandbox Code Playgroud)

然后我正在尝试使用的视频流 getUserMedia

navigator.mediaDevices.getUserMedia({
    video: true,
    audio: false
}).then(stream => {
    // do stuff
}).catch(error => {
    console.log(error.name + " " + error.message);
});
Run Code Online (Sandbox Code Playgroud)

当我在我的模拟器中测试它时,它适用于Android版本5及更高版本,但是当我在实际设备上运行时,我收到此错误 …

javascript cordova getusermedia

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

WebSocket服务器不适用于SSL

我有一个使用websockets的工作聊天应用程序.我想更进一步,并在我的连接上启用加密,但是当我用https打开http服务器时,我的连接开始失败.

我已经生成了一个我在所有网站上使用的自签名证书(在相同的TLD下,这意味着它是一个通配符证书).我可以确认它是一个有效的证书,所以问题不应该存在.

这是有效的(未加密)

var webSocketServer = require('websocket').server;
var http = require('http');

var server = http.createServer(function() {});
server.listen(webSocketsServerPort, function () {
    log("system", "Server is listening on port " + webSocketsServerPort);
});

var wsServer = new webSocketServer({
    httpServer: server
});
Run Code Online (Sandbox Code Playgroud)

使用这个我现在可以连接到ws://my.domain:port.

这是什么工作

var webSocketServer = require('websocket').server;
var http = require('https');
var fs = require('fs');

var server = http.createServer({
    key: fs.readFileSync("path/to/host.key"),
    cert: fs.readFileSync("path/to/host.pem")
});
server.listen(webSocketsServerPort, function () {
    log("system", "Server is listening on port " + webSocketsServerPort);
});

var …
Run Code Online (Sandbox Code Playgroud)

ssl http websocket node.js

11
推荐指数
2
解决办法
3359
查看次数

标签 统计

javascript ×6

php ×3

http ×2

json ×2

websocket ×2

cordova ×1

css ×1

destructor ×1

getusermedia ×1

node.js ×1

pdo ×1

reactjs ×1

session ×1

ssl ×1

transition ×1

url ×1