AJAX

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Java Developer - regio Maastricht

Bouw jij mee aan de applicaties die onze klanten zo hard nodig hebben? Wil jij je als Java Developer blijven ontwikkelen in de nieuwste technologieën en state-of-the-art tooling? En help jij onze pensioenklanten mee met de implementatie van het nieuwe Pensioenakkoord? Wat ga je doen? Als Java Developer draag je mede verantwoordelijkheid voor het gehele proces van omzetten van wensen, problemen of vragen naar concrete oplossingen. Integratie, testen, vastleggen en delen van kennis, problem-management en automation zijn onderdeel van je takenpakket in een SAFe gestuurde omgeving. Daarnaast denk en praat je proactief mee over hoe we onze klanten nog beter

Bekijk vacature »

PHP Developer Symfony Vue.js

Bedrijfsomschrijving Betreffende organisatie is gevestigd in de regio van Lelystad en is al ruim 20 jaar lang bedreven in het ontwikkelen en aanbieden van diverse communicatiemiddelen aan de consumentenmarkt. Hierin staan innovatie, optimale klantbeleving en een passie voor technologie centraal. Ruim 100 medewerkers staan dagelijks klaar om te zorgen voor een optimale klantbeleving en optimalisatie van het aanbod. Om diverse businessprocessen binnen de organisatie vloeiend te laten verlopen is software ontwikkeling van essentieel belang. Binnen de organisatie zijn drie scrumteams dagelijks bezig met het beheer en de doorontwikkeling van het applicatielandschap. Zij werken aan verschillende projecten om de beleving van

Bekijk vacature »

Full Stack Java Developer - Infrastructure

Ben jij een ontwikkelaar die wil bijdragen aan de applicatie ontwikkeling van klanten die zich primair bezig houden met de vitale onderdelen van Nederland, zoals transport, weg, water, spoor en gas, water en licht? Lees dan verder! Wat ga je doen? Als Full Stack Java Ontwikkelaar draag je verantwoordelijkheid voor het gehele proces van het omzetten van wensen, problemen of vragen naar concrete oplossingen. Integratie, testen, vastleggen van kennis en beslissingen, problem management en automation zijn onderdeel van je takenpakket in zowel SAFE of DevOps gestuurde omgevingen als ook in omgevingen die nog werken volgens het traditionele waterval model. Als

Bekijk vacature »

Junior BI ontwikkelaar (Front-end)

Junior BI ontwikkelaar (Front-end) Proactief – klantgericht – communicatief vaardig – analytisch Op zoek naar een functie waar jouw inbreng en kennis meer dan welkom is? Lees hieronder meer over deze vacature. De functie Als Junior BI ontwikkelaar (Front-end) ben je onderdeel van een gedreven intern BI-team. Binnen het team ben jij, samen met twee collega’s, verantwoordelijk voor de front-end ontwikkelingen. Je taken zijn: Het afstemmen en uitwerken van gebruikersaanvragen en informatie analyses; De bouw van rapportages en dashboards en het beheren hiervan; Het verbeteren van de processen; Meedenken over de ontwikkeling van het BI-domein. Het team is zo opgezet

Bekijk vacature »

IT-traineeship junior software ontwikkelaar

Zoek jij een stevige uitdaging en de mogelijkheid om veel nieuwe dingen te leren in een dynamisch vakgebied? Doe mee aan ons IT Professional Program en ontwikkel jezelf tot software engineer! Je begint met een opleidingstraject van ongeveer 4 maanden. Hierin ga je aan de slag met verschillende technieken die je op conceptueel niveau leert te overzien en interpreteren. Onderwerpen die aan bod komen zijn o.a. programmeren (Java/C#/Python), Object Oriëntatie, Databases, Webservices & webtechnologieën, Domain Driven Design en Continuous Integration/Continuous Delivery. Sommige van deze onderdelen sluit je af met een examen en bijbehorende certificering. Het opleidingstraject zelf sluit je af

Bekijk vacature »

Sr. Oracle Developer

Bedrijfsomschrijving Als ervaren DevOps Engineer zal je verantwoordelijk zijn voor de ontwikkeling van nieuwe webapplicaties door middel van Oracle APEX en PL/SQL. Je houdt je bezig met het realiseren van mooie en innovatieve oplossingen, voortstormend uit de requirements die je hebt achterhaald bij diverse stakeholders. Naast web development ben je tevens verantwoordelijk voor het onderhouden een groot aantal complexe applicaties, het analyseren van problemen en hierbij met bruikbare oplossingen komen. Als onderdeel van een scrum team ondersteun je je DevOps collega's waar nodig en zorg je samen met hem voor het optimaliseren van de bedrijfssystemen. De organisatie is een energieleverancier

Bekijk vacature »

Azure developer / Big Data

Bedrijfsomschrijving Als Azure Developer ga je in een team van experts aan de nieuwste digitale technologieën werken om klanten over de hele wereld te ondersteunen met het ontwerpen van slimme processen voor havens, steden, luchthavens en gebouwen! Door middel van real-time data in combinatie met voorspellende analyses, AI, Deep Learning en Machine Learning zorgen jij en je team voor inzichten gevaren en klimaat risico’s voor steden, luchthavens, gebouwen en meer. Als Azure Developer met Big Data ervaring ga je aan de slag met diverse inhouse projecten en pas je jouw kennis toe in verschillende fases van de software development life

Bekijk vacature »

Midlevel/Sr Developer bij leverancier communicatie

Een van de grootste leveranciers van communicatieplatformen aan bijv. internationale telecompartijen is op zoek naar een nieuwe teammember: een ervaren Midlevel tot Senior .Net Developer. De organisatie werkt met de nieuwste en uitsluitend Microsoft .Net technologieën (.Net Core, Azure) en producten als Docker en Kubernetes. Zij werken in Scrum sprints met teams waar samenwerking en (persoonlijke)groei hoog in het vaandel staat. Ze zijn op zoek naar gepassioneerde .Net Developers, waarbij ervaring met bovengenoemde technologieën geen harde eis maar een pré is. Genoeg ruimte dus om ervaring hierin op te doen. Drie jaar geleden hebben zij naast hun huidige applicatie een

Bekijk vacature »

Senior C# Developer

UPS Nederland zoekt een Senior Developer C# * Remote werken mogelijk Wil jij werken aan complexe IT-systemen bij een van de grootste logistieke werkgevers ter wereld? Als ontwikkelaar bij UPS werk je aan opkomende technologieën en DevOps processen om ervoor te zorgen dat onze logistieke processen zo soepel en efficiënt mogelijk verlopen. Dit ga je doen Je bent betrokken bij alle facetten van applicatieontwikkeling. Je bent betrokken bij alle facetten van applicatieontwikkeling: van ontwerpen en bouwen tot testen en implementeren. Je levert ontwerpen die passen bij de onderliggende frameworks en concepten, bouwt efficiënte en testbare code, identificeert en integreert modulaire

Bekijk vacature »

New Business Developer ICT - Noord-Holland - &euro

Wat ga je doen? Als New Business Developer ICT ben jij de verbindende schakel tussen je werkgever en nieuwe klanten. De diensten die jij aan te bieden hebt variëren van klant tot klant. Je helpt je klanten met het vinden van de juiste oplossingen voor hun vraagstukken in de Logistiek dmv een prachtige software tool. Juist deze oplossingen die jij je klanten aan kan bieden zijn uniek omdat alles volledig aangepast kan worden naar de vraag van de klanten. De focus ligt niet op het waarmaken van de klantverwachtingen, je wordt verwacht om altijd te streven naar het overtreffen van

Bekijk vacature »

Java / Hippo developer

Functieomschrijving Ben jij een ervaren Java/Hippo ontwikkelaar en op zoek naar een internationale, creatieve en innovatieve omgeving? Wil jij werken in een divers applicatielandschap waar alle aspecten van het vakgebied van een developer aan bod komen, zodat je je volledig kan ontplooien? Bij Randstad Groep Nederland (HQ) zijn we op zoek naar jou! Wij zijn op zoek naar een Java/Hippo ontwikkelaar die per direct ons interne team komt versterken. Java/Hippo development bij Randstad Groep Nederland (HQ) Je komt te werken in het Online Search Experience team. Dit team werkt samen met de product owner aan onze web omgevingen van Randstad

Bekijk vacature »

Senior AWS Cloud Developer IoT Platform (NL)

Senior AWS Cloud Developer IoT Platform (NL) Den Haag HBO/WO IT Professional Om alle Unique Loading Devices (ULD's) in real-time te kunnen volgen, hebben we een IoT landschap gecreëerd dat ons continu update met de locatie en sensor informatie van de ULD's. Het IoT platform is volledig ontworpen met behulp van AWS serverless componenten en Serverless Architecture staat in het middelpunt van al onze ontwerpen. Enkele van de componenten die we gebruiken zijn AWS IoT services, Amazon Location Service, AWS Lambda enzovoort. Op ons platform vertalen we alle detecties van ULD's, vanuit AWS IoT Core naar relevante informatie over wanneer

Bekijk vacature »

GIS Ontwikkelaar - Utilities

Bij onze klanten vormen Geographical Information Systems (GIS) de basis van het Asset Data Management van de toekomst. Zie jij het als een uitdaging om als onderdeel van een DevOps team de systemen van onze klanten te helpen vormgeven en continu te verbeteren? Wat ga je doen? Ons team bestaat uit GEO/GIS specialisten en wij spelen een belangrijke rol op het gebied van GIS ontwikkelingen bij onze klanten. Binnen onze organisatie hebben wij een grote GEO-ICT practice waarmee we in staat zijn om een fundamenteel deel van de assets basisregistratie voor onze klanten vorm te geven. Dat doen we door

Bekijk vacature »

Opleidingstraject tot Low Code Developer Cross Bor

Opleidingstraject tot Low Code Developer Cross Border Solutions Den Haag HBO/WO IT Professional "Wij zetten Mendix en E-magiz in voor onze kritieke processen om de favoriete bezorger te zijn. We zoeken hiervoor Developers in spe die gaat leren ontwikkelen in Mendix en E-magiz voor het uitbreiden van onze Cloud IT-platformen en softwareoplossingen voor onze belangrijkste internationale klanten. Dit vraagt om analytisch vermogen, creativiteit, klantgerichtheid en uitstekende communicatie skills". Wat ga je doen? Als onze nieuwe Junior Developer word je onderdeel van de digitale transformatie van onze internationale business unit naar een e-commerce dienstverlener. PostNL’s cross border unit (CBS) groeit in snel tempo

Bekijk vacature »

Software Developer / full-stack

Bedrijfsomschrijving Voor een organisatie binnen de zakelijke dienstverlening zijn wij op zoek naar een Software Developer met goede kennis van zowel Java als front-end technieken als Angular. Het betreft een organisatie bestaande uit ongeveer 100 mensen die klaar staan voor ruim twee duizend klanten. De organisatie staat bekend om het feit dat zij met hun kwalitatief goede dienst een van de snelste zijn. Dit valt op in de markt en dit bewerkstelligen zij door alles zoveel mogelijk te automatiseren. IT, en software development in het bijzonder, wordt als erg belangrijk gezien. Het complexe applicatie landschap is geheel maatwerk en geschreven

Bekijk vacature »
Martijn Wieringa

Martijn Wieringa

05/02/2009 13:23:00
Quote Anchor link
Beste webapplicatie-ontwikkelaars,

Ik heb me de laatste tijd verder verdiept in AJAX om optimaal te benutten binnen de ontwikkeling van applicaties.

Nu was mijn vraag wat jullie mening is bij het gebruik van AJAX, en hoe jullie dit in de praktijk toepassen. Hierbij maak ik me met name zorgen over beveiliging vs. flexibiliteit.

Enkele zaken waarvoor ik AJAX wil gaan inzetten:

Valideren van een formulierveld
- Zo wil ik bij een bezoeker die zich wil registreren in de DB kunnen kijken of de gebruikersnaam/emailadres al in gebruik is.

Invullen/aanvullen van formuliervelden
- Adres opzoeken bij postcode, zoekbox aanvullen, etc.

Laden van HTML
- Opvragen van een complete HTML pagina, voor een inline-popups (zoals iBox).
- Opvragen van een blok HTML code om de inhoud van bepaalde elementen te veranderen (banner/nieuwsitem op homepage, chat venster waarmee klant met websitebeheerder kan chatten, etc).

Database handelingen
- Opvragen, updaten en toevoegen van records in de database. Bijvoorbeeld de volgorde van items automatisch opslaan nadat deze d.m.v. drag/drop zijn verschoven.
 
PHP hulp

PHP hulp

11/05/2021 16:13:51
 
Martijn Wieringa

Martijn Wieringa

06/02/2009 17:49:00
Quote Anchor link
*bump*
 
Jesper Diovo

Jesper Diovo

06/02/2009 17:54:00
Quote Anchor link
AJAX vind ik echt heel handig. Je kunt er alle kanten mee op en je website wordt daarmee nog dynamischer.

De beveiligingen laat ik over aan het PHP bestand dat wordt aangeroepen door AJAX. Als je vooraf gaat controleren, heeft dat geen zin; de gebruiker kan namelijk zo terugzoeken welke gegevens mee verzonden worden naar welk bestand. Het liefst maak ik ook gebruik van de method "POST", omdat dat nog wat extra moeite vergt van een gebruiker om daadwerkelijk het bestand juist aan te kunnen roepen. Als het PHP bestand er dan ook nog voor zorgt dat de mee gestuurde variabelen op juistheid gecontroleerd worden is het volgens mij best veilig.
 
Martijn Wieringa

Martijn Wieringa

06/02/2009 18:14:00
Quote Anchor link
Met behulp van een HASH code zou ik kunnen valideren of ontvangen data in POST of GET geldig is, maar deze hashcode moet dan via javascript worden gegenereerd.. en dus uiteindelijk door iedereen te kopieren.

Ik neem aan dat ik bij een AJAX request de PHPSESSID gewoon kan meegeven?! Dus ik zou al kunnen forceren dat een gebruiker ingelogd moet zijn om bepaalde pagina's te kunnen aanroepen.

Maar hoe zorg ik er nu voor dat de achterliggende PHP pagina flexibel is, en de AJAX-aanroep toch beveiligd

Zo maar ff wat 'brainstormen':
Ik stel me zo voor dat ik vanuit mijn pagina een UPDATE query zou willen kunnen uitvoeren. Deze stuurt dan bijv. een QUERY-string als parameter mee naar de PHP-pagina.

Nu wil ik voorkomen dat 'hackers' ineens tal van wijzigingen gaan aanbrengen in deze query.. dus moet deze verder beveiligd worden.. wat is daarvoor een goede aanpak.

Wat ook zou kunnen is een database tabel maken die tal van queries bevat.
AJAX roept dan het PHP script op met een query-ID die aangeeft welke query moet worden uitgevoerd. Probleem daar is echter hoe parameters in de query's kunnen worden toegevoegd...
 
Kumkwat Trender

Kumkwat Trender

06/02/2009 18:28:00
Quote Anchor link
er zijn veel manieren om je pagina te beveiligen

je kan het zo doen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
if(isset($_SERVER['HTTP_X_USERAGENT']) && $_SERVER['HTTP_X_USERAGENT'] == 'MijnAjaxApplicatie') {
    //een ajax-klant
} else {
    //een saaie browser die een saaie standaard aanroep doet.
}
?>


of zo:

var hash = hex_md5(userid + status + 'MaHashSalt!');

en dan als je de pagina aanvraagt krijg je de volgende hash
index.php?user=17603&status=doing+well&hash=96706c5aa49bda800e9b8b0858485ac6

met de volgende php code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$user
= $_GET['user'];
$status = urldecode($_GET['status']);
$hash = urldecode($_GET['hash']);
 
if ($hash == md5($user . $status . 'MaHashSalt!')) {
  //this is a valid request!
  //insert into database

}
else {
  //this is not a valid request
  //do nothing!

}
?>


etc.etc.
er zijn heel veel mogelijkheden om het veilig te maken

maar wat jij zegt
"Nu wil ik voorkomen dat 'hackers' ineens tal van wijzigingen gaan aanbrengen in deze query.. dus moet deze verder beveiligd worden.. wat is daarvoor een goede aanpak."

kun je makkelijk tegen gaan door dat je in beschikking bent om sessions te gebruiken, hashes enz.
is wel te doen..
 
Martijn Wieringa

Martijn Wieringa

06/02/2009 18:37:00
Quote Anchor link
Allereerst bedankt voor je reactie! Ik ben het echter niet met je eens wat betreft het gemak van beveiligen..

Mijns inziens is de 'HTTP_X_USERAGENT' beslist niet te vertrouwen.. in o.a. Opera kun je deze variabele in je browser zelf instellen. Zeker omdat je die setting zelf in je javascript SET, kan de 'hacker' deze waarde eenvoudig kopiëren, en overnemen in zijn browser.

Daarnaast moet de hash worden berekend via javascript, vlak voordat de gewenste URL door AJAX wordt opgeroepen. Dit betekend dat de 'secret hash key' in je javascript moet staan.. oftewel gewoon uit te lezen is via het bekijken van de broncode..
 
Kumkwat Trender

Kumkwat Trender

06/02/2009 19:09:00
Quote Anchor link
Hmm, volgens mij bestaat er ook niet echt een "Veilige" manier ervoor.
ik denk meer dat je meer tijd moet besteden om met php te controlleren dan met ajax de gegevens veilig te sturen.

trouwens misschien wel handig:
http://www.ebrueggeman.com/blog/tag/forged-ajax-request/

maar ik zie het als een formulier. Als je een formulier verzend heb je ook namelijk een name tag en een value.
dit controlleer je natuurlijk door je php pagina. wanneer het goed is voeg je het toe in je database.

met ajax is het ook zo.
je krijgt door middel van get request een value die je moet controlleren en een actie moet voeren..
nja suc6 ermee ;)
Gewijzigd op 01/01/1970 01:00:00 door Kumkwat Trender
 
Jelmer -

Jelmer -

06/02/2009 20:29:00
Quote Anchor link
Wat wil je precies beveiligen? Cookies worden gewoon meegestuurd bij AJAX requests, dus je kan gewoon gebruik maken van $_SESSION, en de beveiliging is inweze vrijwel gelijk aan die van normale pagina's volgens mij.
 
Lode

Lode

06/02/2009 23:25:00
Quote Anchor link
controlleer de url wellicht in ajax om cross source request forgery CSRF tegen te gaan. Verder zou ik zeggen doe zoveel mogenlijk in de backend. wat niet weet wat niet deert...
 
Martijn Wieringa

Martijn Wieringa

07/02/2009 08:46:00
Quote Anchor link
Ik vind het een zeer goed en logisch klinkend argument om een AJAX request gelijk aan een formulier te behandelen.

Nadeel is echter dat je per formulier een 'uniek' afhandel-script moet ontwikkelen die input en rechten valideert. Ik hoopte een oplossing te vinden waarmee ik de afhandeling veel flexibeler kan oplossen, maar miss. is dat er gewoon weg niet :(
 
Midas

Midas

07/02/2009 09:43:00
Quote Anchor link
Ik weet niet of je moet zeggen dat het slecht is om voor elk formulier een aparte afhandeling hebt. Dat strookt volgens mij toch wel met het MVC pattern, en vergroot dus de uitbreidbaarheid.
 
Martijn Wieringa

Martijn Wieringa

10/02/2009 14:51:00
Quote Anchor link
Voor een formulier moet je vaak unieke code schrijven om een goede afhandeling en beveiliging te garanderen. Ik hoop echter via enkele standaard oplossingen tal van AJAX-requests te kunnen afhandelen.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.