2011-02-13 94 views

回答

17

還有different ways to generate UUIDs。如果你已經在使用CouchDB的,你可以問CouchDB的一些這樣的:

http://127.0.0.1:5984/_uuids?count=10 

CouchDB的有three different UUID generation algorithms。您可以指定CouchDB在CouchDB配置中使用哪一個作爲uuids /算法。向CouchDB詢問UUID可能會有好處。具體而言,如果您正在使用「序列」生成算法。您從CouchDB獲得的UUID將落入該順序。

如果你想在node.js中完成而不依賴於CouchDB,那麼你需要一個寫入JavaScript的UUID函數。 node-uuid是使用「版本4」(隨機數字)或「版本1」(基於時間戳)的JavaScript實現。它適用於node.js或託管在瀏覽器中:https://github.com/broofa/node-uuid

如果您在Linux上,還有一個libuuid的JavaScript包裝器。它被稱爲uuidjs。在node-uuid的ReadMe中有一個與node-uuid的性能比較。

如果你想做點什麼,而且它看起來並不像node.js中支持的那樣,一定要檢查modules availablenpm

+2

兩個小的更正:node-uuid現在提供v1(時間戳)和v4(隨機)UUID解決方案。另外,它不僅適用於node.js - 它也適用於所有主流瀏覽器。 – broofa 2012-01-04 14:53:23

0

我有同樣的問題,結果發現只是傳遞一個「空」爲CouchDB的ID在insert語句也做的伎倆:

VAR newdoc = { 「富」:「酒吧」, 「鍵入「:」my_couch_doctype「 };

mycouchdb.insert(newdoc,空/ * < - 讓CouchDB的爲您生成* /功能(ERR,身體){

});