Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
Proteksi File JSON untuk Aplikasi Android
siang agan agan , file json sangat berguna buat penghubung antara aplikasi berbasis html5 ke database , tapi kalo di pikir pikir ga terlalu aman karna file json bisa di buka di browser . ada cara ga ya buat amanin file jsonya . case nya kaya gini . saya lagi nampilin status . pake ajax buat berkomunikasi antara aplikasi sama database . maaf caranya masih bar bar , cox belum nemu metode yang bagus buat protek filenya
ini file jsonya . :
<?php ob_start(); ?>
<?php
require_once "core/init.php";
//memberi pengalamatan khusus untuk json
header('Content-type: application/json');
//memanggil database
$email = $_GET['email'] ;
if ($email){
$link=koneksi_db();
//query data
$sql2 = "SELECT * FROM status RIGHT JOIN members ON status.id_user_status=members.id_user WHERE status.id_user_status=members.id_user ORDER BY tanggal_status DESC ";
$result = mysql_query($sql2) or die ("Query error: " . mysql_error());
//fetch dalam bentuk array
$records1 = array();
while($row2 = mysql_fetch_assoc($result)) {
$id_user_status = $row2 ['id_user_status'];
$records1[] = $row2;
}
//menuliskannya dalam bentuk json menggunakan fungsi json_encode
echo $_GET['jsoncallback'] . '(' . json_encode($records1) . ');';
}
?>
ini validasi ajax nya saya pake key email yang ada di localStorage phonegap buat di lempar ke file json tadi , lagi mau keluarin pake method POST belum berhasil .
<script type="text/javascript" charset="utf-8">
var email = localStorage.email;
var url1 = 'http://localhost/www.kuazzar.com/mobile_tampilstatus.php?email=';
var url2 = url1 + email ;
$(document).ready(function(){
$.ajax({
url: url2,
dataType: 'jsonp',
jsonp: 'jsoncallback',
timeout: 5000,
success: function(data, status){
$.each(data, function(i,item){
$("#keluar").append(
"<div id='tampil_status' > <img id='pp_user' src='http://localhost/www.kuazzar.com/"+item.pp+"'><h2>"+item.username+"</h2><p>"+item.isi_status+"</p><img id='gambarstatus' src='http://localhost/www.kuazzar.com/"+item.gambar_status+"'><form><input placeholder='Komentar..'><button>Kirim</button></form></div>"
);
});
},
error: function(){
alert('Error terjadi');
}
});
});
</script>
di aplikasi berhasil nampilin data
kalo di browser pake link ini doang <a href=' http://localhost/www.kuazzar.com/mobile_tampilstatus.php? '> http://localhost/www.kuazzar.com/mobile_tampilstatus.php? </a> emang ga muncul karna saya ngeharusin ada $_GET['email']; tapi ane kira itu bukan proteksi karna . kalo di akalin pake link ini <a href='http://localhost/www.kuazzar.com/mobile_tampilstatus.php?email=kuda'>http://localhost/www.kuazzar.com/mobile_tampilstatus.php?email=kuda</a>
file json bisa tampil .
mohon info gmna cara and metode yang bagus buat protect file json biar cuma bisa di akses sama user dari aplikasi phonegapnya . thanks berat :D
8 Jawaban:
kalo ane kepikiranya dicek sessionnya gan, istilahnya cek dia login apa ngga. kalo ngga langsung redirect ke home atau ke mana yan gboleh
Tapi gan andi. Ini posisi ada di luar host file indexnya. Coz buat aplikasi phonegap. Masuk ke php cuma buat ambil data.
1. kalo ane prinsipnya gini gan, ngga papa orang bisa buka di browser selama bukan data yang sensitiv yang kelihatan. Mau gimana juga kita sebenernya kan nyediain datanya di aplikasi kita, jadi ngga masalah sebenernya 2. Selama bisa ngecek dia login atau ngga, diuji aja di data phpnya, artinya kalo orangnya ngga iseng, hasil yang dia terima normal, seperti user biasa. Kalo dia coba iseng, kita udah proteksi sebelumnya
ini ada tontonan dan bacaan gan tentang JWT token, atau json web token, yang orang rekomendasiin buat sistem autentinkasi API [link]https://www.youtube.com/watch?v=oXxbB5kv9OA[/link] http://www.toptal.com/web/cookie-free-authentication-with-json-web-tokens-an-example-in-laravel-and-angularjs
biuat juga sistem login nya gan, file login ada di pusat, jadi seperti buat login dengan php biasa, cuman hasil sukses/gagal untuk login di kirim lewat json
alhamdulilah sistem login sudah berhasil gan, sampai si user masuk ke Beranda and bisa post ke Database. thanks buat jawabanya semua ... kalo bisa ada referensi buat post Gambar :D
Ilmunya dibagi-bagi dong mas Tutorialnya bisa masukin perpustakaan tuh
siap mas, di tunggu . pasti di share di perpustakan , kemaren baru post yang buat bikin logo, ntar saya post cara gunain intel XDK sekalian :) biar yang mau bikin aplikasi bermodal HTML5 makin semangat :D . (Lagi ada tugas kampus yang bener bener ngabisin waktu gan )