Get BinData UUID from Mongo as string

后端 未结 4 1002
悲&欢浪女
悲&欢浪女 2020-11-29 21:22

I currently have some ids stored in Mongo as UUIDs (necessary for processing). They get returned like this:

\"_id\" : new BinData(3, \"JliB6gIMRuSphAD2KmhzgQ         


        
4条回答
  •  夕颜
    夕颜 (楼主)
    2020-11-29 21:56

    Use this function before your query:

    function ToGUID(hex) {
        var a = hex.substr(6, 2) + hex.substr(4, 2) + hex.substr(2, 2) + hex.substr(0, 2);
        var b = hex.substr(10, 2) + hex.substr(8, 2);
        var c = hex.substr(14, 2) + hex.substr(12, 2);
        var d = hex.substr(16, 16);
        hex = a + b + c + d;
        var uuid = hex.substr(0, 8) + '-' + hex.substr(8, 4) + '-' + hex.substr(12, 4) + '-' + hex.substr(16, 4) + '-' + hex.substr(20, 12);
        return '"' + uuid + '"';
    }
    
    var id = new BinData(3, "JliB6gIMRuSphAD2KmhzgQ==");
    ToGUID(id.hex());
    

    Result: "ea815826-0c02-e446-a984-00f62a687381"

提交回复
热议问题