Mysql
 sql >> база данни >  >> RDS >> Mysql

Свържете Parse с външна база данни?

Ако имате предвид нещо като общ mysql конектор, тогава отговорът е не, не можете. В момента единственият начин да направите синтактичен анализ и нещо друго във връзка, е да направите заявка от и към Parse. За да бъде ясно:

  • Ако искате да получите стойност от Parse, която се съхранява в mysql, трябва да използвате http заявка към конкретен php модул, съхранен на вашия php уебсайт (и внедрен от вас), който очаква някакъв параметр, и да върне резултата в по специфичен начин, обикновено във формат json, като се използва и http заглавката application/json.

  • Ако искате да получите стойност от php, която се съхранява в db за синтактичен анализ, можете да изпълните REST извикване от php, следвайки спецификацията на уебсайта за синтактичен анализ ( https://parse.com/docs/rest/guide/ ), или просто с помощта на php sdk ( https://github.com/ParsePlatform/parse- php-sdk ). Обърнете внимание и на Parse Webhooks.

Доколкото разбрах, вие вече имате работеща уеб услуга, така че правейки това, вие просто ще проксирате ресурсите, съхранени на вашия сървър на mysql, към вашите клиенти чрез Parse. С други думи, трябва да създадете функция Parse Cloud за всеки тип информация, която искате да извлечете на клиентите, използвайки Parse SDK (за iOS или Android) и друга функция Parse Colud за всяко действие, което извършвате на вашите устройства и искате да запазите във вашия mysql db, винаги през системата Parse.

Моето лично мнение е да остана на Mysql, особено защото в Parse все още имаме много ограничения за заявките (без група по, без отделно, изчакване на заявка и т.н.), докато изглежда наистина добра услуга за натискане уведомление. Във всеки случай всичко това зависи от сложността на вашия софтуер и както казах, това е само мое мнение.

[Редактиране]

Ето един пример:

В Parse облачния код нека направим облачна функция, наречена „get_user_info“

Parse.Cloud.define("get_user_info", 

function(request,response){

    // Parameters from client (iOS/Android app)
    var requestedUserId = request.params.user_id;

    // Calling beckend service for getting user information
    Parse.Cloud.httpRequest({
        method: "POST",        
        url: "https://www.yourPhpWebsite.com/getUser.php", /* This could be your url for the proper php module */
        body: { "php_param_user_id":requestedUserId }, /* Here you compose the body request for the http call, passing the php parameters and their values */
        success: function(httpResponse) {

        /* We expect that the php response is a Json string, using the header('application/json'), so: */
        var jsonResponse = JSON.parse(httpResponse.text);

        /* sample structure in jsonResponse: { "name":"Joe", "surname":"Banana", "birth_date":"01-02-1999" } */

        /* Do any additional stuff you need... */

        /* return the result to your iOS/Android client */
        return response.success( { "myRequestedUserInfo" : jsonResponse } );

        },
        error: function(httpResponse) {            
                return response.error({ "msg":"Unable to fetch this user", "code":123456 }); // sample error response            
        }
    });

});

Примерният модул „getUser.php“ може да бъде

<?php

$expectedUserId = $_POST['php_param_user_id'];

// query your MySql db using passed user id
$query = "SELECT name,surname,birth_date FROM MyUserTable Where id = ".$expectedUserId;

// perform your query (the above one is just an example, would be better to use PDO and any other check, just to avoid SQL Injection)
// ...
// ..
// .

$resultQuery = row[0];

// sample json structure
$jsonResponseToParse = '{ "name":'.resultQuery["name"].', "surname":'.resultQuery["surname"].', "birth_date":'.resultQuery["birth_date"].' }';

header('application/json');

echo jsonResponseToParse;

exit();

?>

Надявам се да помогне




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Разширен архив на новини Години/Месец с помощта на PHP MySql

  2. Не може да се зареди приставката за удостоверяване 'caching_sha2_password'

  3. Какво е по-бързо, SELECT DISTINCT или GROUP BY в MySQL?

  4. 504 Грешка при изчакване на шлюза при избор на 300 000 реда от базата данни MySQL

  5. Ограничете SQL със сумата от стойността на реда