Skip to content

Instantly share code, notes, and snippets.

@zigorou
zigorou / make_jws.pl
Created June 26, 2014 05:47
Making JSON Web Signature (JWS)
#!/usr/bin/env perl
use strict;
use warnings;
use feature qw(say);
use Digest::SHA qw(hmac_sha256);
use JSON;
use MIME::Base64 qw(encode_base64url decode_base64url);
@zigorou
zigorou / hal.json
Created June 2, 2014 08:41
HAL schema written by JSON Schema draft-04
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Hypermedia Application Languchage schema",
"definitions": {
"linkObject": {
"type": "object",
"properties": {
"href": {
"title": "Resource URI",
"type": "string",
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"minimum": 1
},
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9_]{1,32}$"
#!/usr/bin/env perl
use strict;
use warnings;
use feature qw(say);
use Coro;
async {
my @args = @_;
@zigorou
zigorou / 0.psgi
Last active December 13, 2015 22:49
Twiggy::Prefork の練習
#!/usr/bin/env perl
use strict;
use warnings;
use Coro;
use AnyEvent;
use AnyEvent::Log;
$AnyEvent::Log::FILTER->level("debug");
@zigorou
zigorou / facebook_login.psgi
Created December 23, 2012 07:21
Facebook login sample
use strict;
use warnings;
use Config::Pit;
use Data::Section::Simple qw(get_data_section);
use HTTP::Request;
use HTTP::Status qw(:constants);
use Log::Minimal;
use LWP::UserAgent;
use Plack::Builder;
@zigorou
zigorou / nekokak.psgi
Created November 13, 2012 16:57
nekokak.psgi
use strict;
use warnings;
use AE;
use AnyEvent;
use HTTP::Status qw(:constants);
use JSON;
use Plack::Request;
use Plack::Response;
use Time::HiRes qw(tv_interval gettimeofday);
@zigorou
zigorou / sample.json
Created October 5, 2012 07:36
Sample schema (OAuth 2.0 Authorization Request and Response)
{
"id": "http://schema.example.com/oauth/2.0/authorization_request",
"title": "OAuth 2.0 Authorization Code Grant Response Object",
"properties": {
"code": {
"title": "The authorization code",
"type": "string",
"required": true
},
"state": {
@zigorou
zigorou / parser.pl
Created February 21, 2012 03:07
uri_template_draft08
#!/usr/bin/env perl
use strict;
use warnings;
use Data::Dump qw(dump);
my $t = $ARGV[0];
our %RE;
$RE{ALPHA} = qr/[A-Za-z]/;
@zigorou
zigorou / daytimecli.c
Created January 14, 2012 15:35
daytime client
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <errno.h>
#include <netinet/in.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/uio.h>
#include <unistd.h>