2014-03-28 25 views
2

我搜索了整個互聯網,我找不到一種可以使用Javascript登錄到SugarCRM的工作方式。這與我已經接近:如何使用Javascript登錄到SugarCRM?

var params = { 
    user_auth:{ 
    user_name:'jim', 
    password:'jim', 
    encryption:'PLAIN' 
    }, 
    application_name: 'SugarCRM RestAPI Example' 
} 
var restdata = JSON.stringify(params); 

$.ajax({ 
    type: "POST", 
    url: "http://alzjgk0569.trial.sugarcrm.com/service/v4/rest.php?jsoncallback=?", 
    data: { 
    method: "login", 
    input_type: "JSON", 
    response_type: "JSON", 
    rest_data: restData 
    }, 
    dataType:"jsonp", 
    success: function(result) {alert("result: " + JSON.stringify(result));}, 
    failure: function() {alert("failed");} 
}); 

任何有什麼想法?

謝謝。

p.s.我應該提到的是,以下的作品就好了:

<form action="https://alzjgk0569.trial.sugarcrm.com/rest/v10/oauth2/token" method="post">  
    grant_type: <input type="text" name="grant_type" value="password"><br> 
    client_id: <input type="text" name="client_id" value="sugar"><br> 
    client_secret: <input type="text" name="client_secret" value=""><br> 
    username: <input type="text" name="username" value="jim"><br> 
    password: <input type="text" name="password" value="jim"><br> 
    platform: <input type="text" name="platform" value="base"><br> 
    <input type="submit" value="Submit"> 
</form> 

編輯: 我把它通過改變開始與URL工作「https://開頭」時,該頁面供應以「https」。但迴應是這樣的:

{\"user_auth\":{\"user_name\":\"jim\",\"password\":\"jim\",\"encryption\":\"PLAIN\"},\"application_name\":\"SugarCRM RestAPI Example\"}" = {"id":"1cg0ji99ouq0st6jndlcbo3075","module_name":"Users","name_value_list":{"user_id":{"name":"user_id","value":"seed_jim_id"},"user_name":{"name":"user_name","value":"jim"},"user_language":{"name":"user_language","value":"en_us"},"user_currency_id":{"name":"user_currency_id","value":"-99"},"user_is_admin":{"name":"user_is_admin","value":false},"user_default_team_id":{"name":"user_default_team_id","value":"1"},"user_default_dateformat":{"name":"user_default_dateformat","value":"m/d/Y"},"user_default_timeformat":{"name":"user_default_timeformat","value":"h:ia"},"user_number_seperator":{"name":"user_number_seperator","value":","},"user_decimal_seperator":{"name":"user_decimal_seperator","value":"."},"mobile_max_list_entries":{"name":"mobile_max_list_entries","value":10},"mobile_max_subpanel_entries":{"name":"mobile_max_subpanel_entries","value":3},"user_currency_name":{"name":"user_currency_name","value":"US Dollar"}}} 

這是完全沒用的信息。它沒有令牌,所以它甚至不是真正的登錄名。我放棄了在客戶端SugarCRM登錄,並回到服務器端與PHP,我知道的作品。

+0

將'$ .ajax''type'更改爲'GET'會發生什麼? – raina77ow

回答

2

你其實在這裏有答案。您的登錄令牌是您發佈的回覆中的ID值。

0

SugarCRM API調用在服務器端更好: 1.更安全 2.由於瀏覽器強制執行相同原點策略,沒有跨域請求問題。所以JSONP是不需要的。