Skip to content

Instantly share code, notes, and snippets.

@Yujiro3
Yujiro3 / http_parser.js
Last active August 29, 2015 14:17
nodeのコアモジュールによるHTTP解析
var HTTPParser = process.binding('http_parser').HTTPParser
var parser = new HTTPParser(HTTPParser.RESPONSE);
parser[HTTPParser.kOnHeaders] = function(headers, url) {
console.log('onHeaders');
}
parser[HTTPParser.kOnHeadersComplete] = function(info) {
console.log('-------- onHeadersComplete --------');
console.log(info);
@Yujiro3
Yujiro3 / fastcgi-cli.js
Last active August 29, 2015 14:17
nodeのFastcgiクライアントモジュールっぽいの
var eventes = require('eventemitter2').EventEmitter2
, fastcgi = require('fastcgi-parser')
, net = require('net')
, util = require('util');
/**
* Fastcgi Stream
*
* @package library
* @author Yujiro Takahashi <yujiro3@gmail.com>
@Yujiro3
Yujiro3 / node-php.js
Last active August 29, 2015 14:17
nodeをクライアントとしfast-cgiサーバとの通信
var net = require("net");
var fastcgi = require("fastcgi-parser");
/**
* 接続とヘッダー送信
*
*/
var client = net.connect({path: '/var/run/php5-fpm.sock'}, function() {
console.log('client connected');
<?php
/**
* GroongaHTTPフォーマット出力
*
* PHP versions 5.4.x
*
* index.php : https://gist.github.com/Yujiro3/
* Copyright (c) 2011-2014 sheeps.me All Rights Reserved.
*
* @package exchanger
@Yujiro3
Yujiro3 / micro_blog.php
Last active August 29, 2015 14:10
マイクロブログサンプルをPHPでやってみた
<?php
exec('rm -rf ./db; mkdir ./db');
/* DB接続 */
$gdb = new Groonga('./db/test.db');
/* table_create --name Users --flags TABLE_HASH_KEY --key_type ShortText */
$gdb->table('Users')
->flags('TABLE_HASH_KEY')
->keyType('ShortText')
@Yujiro3
Yujiro3 / use_grn_expr_exec.c
Created October 29, 2014 14:44
Groonga v4.0.7によるgrn_expr_exec()のサンプル
#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <groonga/groonga.h>
int main (int argc, char **argv) {
grn_ctx ctx;
grn_obj *db;
grn_ctx_info info;
const char *path = "db/test.db";