本サイトの47進法⇔10進法変換機をサイトに組み込むことが出来るWebAPIを公開しております。
概要
- 本WebAPIは47進法⇔10進法変換機能を提供するREST型のWebサービスです。
- 本WebAPIの結果は、XML・JSON・JSONP・PHP serialized・プレーンテキストのいずれかの形式で受け取ることができます。
- 本WebAPIの入出力に用いる文字セットはUTF-8とします。
利用条件
特に制限はありませんが、1日5万回以上のAPI使用がある、または予測される場合には前もってご連絡ください。
利用方法
本WebAPIでは、10進数または47進数をパラメータ指定して呼び出すと、それに対応する47進数または10進数を得ることができます。WebAPIを呼び出すには、以下のURLに必要なパラメータをURLの一部として渡す必要があります。パラメータの指定の方法には PATH_INFO として渡す方法と QUERY_STRING として渡す方法の2通りが指定可能です。いずれかをお選びください。
10進法⇒47進法
| エントリポイントURL | http://47.k2works.com/10247 | |
|---|---|---|
| パラメータ指定方法 | http://47.k2works.com/10247/10進数/output=出力形式 または http://47.k2works.com/10247?query=10進数&output=出力形式 | |
| 10進数 | 40桁以内の正または負の実数値を指定してください。 | |
| 出力形式 | xml | XML形式にて出力します。 |
| json jsonp | JSON/JSONP形式にて出力します。JSONP形式で出力したい場合は、コールバック関数の名称をオプション callback にて /callback=callBackFunc と追加で指定してください。 | |
| php | PHPのハッシュシリアライズ形式にて出力します。 | |
| 指定なし | 変換後の値のみをプレーンテキスト形式で返します。 | |
47進法⇒10進法
| URLエントリポイント | http://47.k2works.com/47210/47進数/output=出力形式 | |
|---|---|---|
| パラメータ指定方法 | http://47.k2works.com/47210/47進数/output=出力形式 または http://47.k2works.com/47210?query=47進数&output=出力形式 | |
| 47進数 | 24桁以内の正または負の47進実数値をURLエンコードして指定してください。 | |
| 出力形式 | xml | XML形式にて出力します。 |
| json jsonp | JSON/JSONP形式にて出力します。JSONP形式で出力したい場合は、コールバック関数の名称をオプション callback にて /callback=callBackFunc と追加で指定してください。 | |
| php | PHPのハッシュシリアライズ形式にて出力します。 | |
| 指定なし | 変換後の値のみをプレーンテキスト形式で返します。 | |
問い合わせ例・戻り値
プレーンテキスト以外の形式については、共通で次のような構造が返ります。
┬ ├ request │ ├ query : 入力された変換対象の文字列 │ └ options : 設定された出力オプションの一覧 │ ├ mode : 処理モードの内部コード │ └ output : 出力形式 ├ status │ ├ code : 正常なら "OK" 異常なら "ERROR" │ └ description : ステータス詳細 └ value : 出力結果。エラーが発生した場合 NULL
XML
- 正常例
- http://47.k2works.com/10247/1/output=xml
<?xml version="1.0" encoding="UTF-8" ?>
<Result>
<Request>
<Query>1</Query>
<Options>
<mode>10to47</mode>
<output>xml</output>
</Options>
</Request>
<Status>
<Code>OK</Code>
<Description>Completed successfully.</Description>
</Status>
<Value>あ</Value>
</Result>- エラー例
- http://47.k2works.com/10247/a/output=xml
<?xml version="1.0" encoding="UTF-8" ?>
<Result>
<Request>
<Query>a</Query>
<Options>
<mode>10to47</mode>
<output>xml</output>
</Options>
</Request>
<Status>
<Code>ERROR</Code>
<Description>Invalid character found.</Description>
</Status>
<Value />
</Result>
JSON/JSONP
- 正常例
- http://47.k2works.com/10247/1/output=json
{"request":{"query":"1","options":{"mode":"10to47","output":"json"}}, "status":{"code":"OK","description":"Completed successfully."},"value":"\u3042"}- エラー例
- http://47.k2works.com/10247/a/output=json
{"request":{"query":"a","options":{"mode":"10to47","output":"json"}}, "status":{"code":"ERROR","description":"Invalid character found."},"value":null}- コールバック指定例
- http://47.k2works.com/10247/1/callback=SAMPLE.jsonpFunc
SAMPLE.jsonpFunc({"request":{"query":"1","options":{"mode":"10to47","output":"jsonp","callback":"SAMPLE.jsonpFunc"}}, "status":{"code":"OK","description":"Completed successfully."},"value":"\u3042"})
PHP Serialized
実際のレスポンスには改行は含まれません。
- 正常例
- http://47.k2works.com/10247/1/output=php
a:3:{s:7:"request";a:2:{s:5:"query";s:1:"1";s:7:"options";a:2:{s:4:"mode";s:6:"10to47";s:6:"output";s:3:"php";}} s:6:"status";a:2:{s:4:"code";s:2:"OK";s:11:"description";s:23:"Completed successfully.";}s:5:"value";s:3:"あ";}- エラー例
- http://47.k2works.com/10247/a/output=php
a:3:{s:7:"request";a:2:{s:5:"query";s:1:"a";s:7:"options";a:2:{s:4:"mode";s:6:"10to47";s:6:"output";s:3:"php";}} s:6:"status";a:2:{s:4:"code";s:5:"ERROR";s:11:"description";s:24:"Invalid character found.";}s:5:"value";N;}
プレーンテキスト
正常に処理できた場合にはその値のみを、エラーが発生した場合 "ERROR:" から始まる文字列を返します。
- 正常例
- http://47.k2works.com/10247/1
あ- エラー例
- http://47.k2works.com/10247/a
ERROR: Invalid character found.
メッセージ一覧
エラー等の際に表示されるメッセージには次の種類があります。
| 0 | Completed successfully. | 正常終了した場合に出力されます。 |
|---|---|---|
| 1 | No input. | 有効な入力がない場合に出力されます。 |
| 2 | Too large value to handle. | 入力された数値が処理可能な範囲を超えている場合に表示されます。 |
| 3 | Invalid character found. | 入力された文字に、処理の対象外となる文字が含まれていた場合に表示されます。 |
| 4 | No output. | 以上の原因とは異なる何らかの理由で出力が得られなかった場合に表示されます。 |
免責事項
- 小数点以下の値については、最終桁の丸め誤差によって正確に変換できない場合があります。利用するアプリケーションで適宜四捨五入するなどして使用してください。
- 本WebAPIは予告なくサービス内容を変更、一時的に停止、もしくは廃止する場合があります。
- 本WebAPIの提供する情報の正確性の欠如やそれらが原因で発生した損害については一切責任を負いません。
