если не авторизован после Google OAuth, перенаправьте на определенную страницу

Вам нужно использовать метод .aggregate() .

db.getCollection('example').aggregate([ { "$project": { "_id": 0, "id": "$_id" } } ]);

Что дает:

{ "id" : ObjectId("562a67745488a8d831ce2e35") }

или с использованием свойства .str .

db.getCollection('example').find({"example":1},{"_id":1}).map(function(doc) { 
    return {'id': doc._id.str }
})

Что возвращает:

[ { "id" : "562a67745488a8d831ce2e35" } ]

Хорошо, если вы используете драйвер PHP, вы можете сделать что-то вроде этого:

$connection = new MongoClient();
$db = $connection->test;
$col = $db->example;
$cursor = $col->find([], ["_id" => 1]);
foreach($cursor as $doc) { print_r(array("id" => $doc["_id"])); } 

Какой дает:

Array
(
    [id] => MongoId Object
        (
            [$id] => 562a6c60f850734c0c8b4567
        )

)

Или снова использовать метод MongoCollection::aggregate .

$result = $col->aggregate(array(["$project" => ["id" => "$_id", "_id" => 0]]))

Затем, используя цикл foreach:

Array
(
    [_id] => MongoId Object
        (
            [$id] => 562a6c60f850734c0c8b4567
        )

)

1
задан CMArg 15 January 2019 в 22:26
поделиться

1 ответ

Следующий код, кажется, работает.

В html я заменяю это:

xhr.onload = function() {
    window.location.replace("http://MyPage.php");
};

на это:

xhr.onload = function() {
    if (xhr.readyState == 4 && xhr.status==200) {
        window.location.replace(xhr.responseText);
    }
};

И в signin.php

if ($Test==true) {
  echo "http://www.example.com/TheGoodPage.html";
}
else {
  echo "http://www.example.com/TheUnAuthorizedPage.html";
}    
0
ответ дан CMArg 15 January 2019 в 22:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: