Тёмный
No video :(

Build a FullStack Ecommerce with Nextjs, Strapi, Magic and Stripe 

Alex the Entreprenerd
Подписаться 7 тыс.
Просмотров 125 тыс.
50% 1

Опубликовано:

 

5 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 225   
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
SECURITY WARNING: Please check this setup for a secure way to add Magic: github.com/GalloDaSballo/strapi-magic-template/blob/main/extensions/users-permissions/config/policies/permissions.js If you had issues with strapi-plugin-magic try the latest version 0.9.0 You can add your Magic key via a .env file Use the key: MAGIC_KEY
@cdrman
@cdrman 3 года назад
Hi!!! I just tried the tutorial and everything works perfect but in the browser console i see some errors: Source Description auth.magic.link/v1/session/refresh:1 Failed to load resource: the server responded with a status of 400 () api.rollbar.com/api/1/item/:1 Failed to load resource: the server responded with a status of 429 () Is it normal¿? The problem is in "magic = new Magic(process.env.NEXT_PUBLIC_MAGIC_KEY);"
@raphaelali218
@raphaelali218 3 года назад
you prolly dont give a shit but does any of you know a method to log back into an instagram account..? I was stupid lost the password. I appreciate any tricks you can offer me
@alicayden9792
@alicayden9792 3 года назад
@Raphael Ali Instablaster :)
@raphaelali218
@raphaelali218 3 года назад
@Ali Cayden I really appreciate your reply. I found the site on google and im trying it out now. Takes quite some time so I will reply here later when my account password hopefully is recovered.
@raphaelali218
@raphaelali218 3 года назад
@Ali Cayden it did the trick and I now got access to my account again. Im so happy! Thank you so much, you really help me out!
@jesusidev
@jesusidev 3 года назад
Thank you for the course and I love the zooming in. It really helps the eyes 👍
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Glad you Enjoyed it Jesus!
@reversedflow
@reversedflow 2 года назад
For Strapi v4 to get user's own orders, here is the syntax that worked for me: module.exports = createCoreController("api::order.order", ({ strapi }) => ({ async find(ctx) { const { user } = ctx.state; ctx.query = { ...ctx.query, filters: { user: user.id } }; const { data, meta } = await super.find(ctx); return { data, meta }; }, }));
@andreferreiradaweb
@andreferreiradaweb 3 года назад
I'm from brazil, just bought your strapi course on udemy and i'm enjoing it a lot. thanks for all.
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Thank you for your support André! Send me your Github when you have made a few projects and I'll send you some notes!
@andreferreiradaweb
@andreferreiradaweb 3 года назад
@@AlextheEntreprenerd Sure
@Charles-Darwin
@Charles-Darwin 3 года назад
Thank you for posting this tutorial! I'm poor af right now, so I am very grateful to have the opportunity to learn more nextjs. Great work!
@FitWithAryan
@FitWithAryan 2 года назад
i think few things got changed with the introduction of strapi v4
@iPururin
@iPururin 3 года назад
This is an amazing tutorial, I typically don't have the patience to sit through long tutorials like these, but every minute felt relevant and had purpose. Extra points from me for adding the segments. Even though I'm using just React for my frontend with Strapi and Magic Link, this is still incredibly helpful. Thank you for the awesome work!
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Glad you enjoyed it! I tried to make it fast paced so you don't get bored, but not too fast to avoid confusion
@Smurfis
@Smurfis Год назад
@@AlextheEntreprenerdHi Alex would you consider doing any more lower class JavaScript tutorials I’m quite unsure of the use cases it just seems like a lot of frameworks and calling them after installing and setting them up I come from other languages and have experimented a lot but would like to take JavaScript more serious. Thanks brother have a good day’
@konstantinospapadopoulos1529
@konstantinospapadopoulos1529 3 года назад
I normally don't comment on RU-vid but this is a great tutorial - straight to the point, no annoying interruptions in between. Subscribed!
@boboyyt
@boboyyt 3 года назад
I normally do not comment on RU-vid. This is a great video and keep up the good work!
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Glad you enjoyed it!
@patrykbindacz4333
@patrykbindacz4333 3 года назад
Hi, this is one of the best tutorials I have seen
@swojnowski453
@swojnowski453 3 года назад
you really haven't seen much in your life ;)
@patrykbindacz4333
@patrykbindacz4333 3 года назад
@@swojnowski453 :(
@kaylextech6095
@kaylextech6095 3 года назад
Great Tutorial, Alex is a brillant instructor, he not only shows you what to do, he actually explains what the code you are writing does. Very rare for a tutorial. I've learnt so much from this tut. A lot about Strapi and React/NextJS well worth the time to watch. I do have a question though. How difficult would it be to add Magic to authenticate Strapi users, i.e. Editors etc? I've also brought his course on Udemy, absolutely brilliant. I'm a 1/4 of the way through and already writing my own custom plugins. Very impressed
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Thank you! I think authenticating the Admin side with Strapi should be fairly simple. However, the Strapi Team is about to launch an improvement which will make it even easier. I'd recommend waiting for it to launch: portal.productboard.com/strapi/1-roadmap/tabs/4-testing
@ioannisme7495
@ioannisme7495 3 года назад
i cant believe that this is free..thank you very much
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Now make the best of it!
@W_Ahmaddev
@W_Ahmaddev 3 года назад
almost done, very help me to understanding about Nextjs, Strapi and Magic also Stripe
@mitri-dvp
@mitri-dvp 3 года назад
Thanks man! I've just finished the project myself, learned a lot from your video and quite happy with the results
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Awesome!
@philippmerk5980
@philippmerk5980 2 года назад
im amazed how simple it is to customize strapi to your needs. on top of this project im connecting my app to my accounting software and sendgrid as an email service. will probably replace my current woocommerce project with this due to its flexibility.
@MdARahim
@MdARahim 3 года назад
The next two days I'm gonna spend with this video. Thanks for the video!
@antrahagure5372
@antrahagure5372 Год назад
Thank you for your effort and giving us this information for free!
@AlextheEntreprenerd
@AlextheEntreprenerd Год назад
Best of luck in your journey!
@antrahagure5372
@antrahagure5372 Год назад
Thank you!
@benjamin_kang
@benjamin_kang 3 года назад
Can’t wait to check out this tutorial. Thank you very much.
@JoshuaTMagee
@JoshuaTMagee 3 года назад
What an amazing amount of value in this tutorial! Thank you! By the way, everything was going great until I attempted to install strapi-plugin-magic, and then npm spit back 44 identified vulnerabilities, two moderate and 42 high. Anyone else experience this problem and have a fix?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Will need to upgrade the code here: github.com/GalloDaSballo/strapi-magic-template If you have the time, please push a PR!
@FitWithAryan
@FitWithAryan 2 года назад
Authenticated requests is not working in Strapi v4 Despit adding Magic key via a .env file Using the key: MAGIC_KEY I'm sure this is not updated for latest version for strapi.
@KerimWillem
@KerimWillem 3 года назад
This is some very valuable content. Thank you very much!
3 года назад
Cheers mate. Thank you for providing this tutorial. I'll for sure buy it in some time
@gayatridipali4169
@gayatridipali4169 3 года назад
amazing video I wanted to learn strapi thanks
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Now you can!
@agustinquintanilla5051
@agustinquintanilla5051 3 года назад
As good as ever, I love your videos! thanks Alex
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Glad you enjoyed it Agustin!
@davidasiamah2898
@davidasiamah2898 3 года назад
I loved the presentation and memes. :). Thank U
@agk2011
@agk2011 2 года назад
Thank you so much for such a tutorial. Great work.
@Tulindor
@Tulindor 3 года назад
Amazing work Alex!
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Glad you enjoyed it!
@NextinkCa
@NextinkCa 3 года назад
I don't know what to say, but you are the best! God bless you
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Glad I could be part of your success!
@alfonsorickykurnia
@alfonsorickykurnia 3 года назад
Good content, i should spend 2 days my time to learn this tutorial
@kadoosh
@kadoosh 3 года назад
very nicely and clearly explained. Thank you for that 🙇‍♂️
@ericbobcamargo
@ericbobcamargo 3 года назад
Why is your Udemy course private? :´(
@olimac007
@olimac007 3 года назад
Awesome video! Thank you man!
@The.eminence
@The.eminence 3 года назад
i was looking for it thanks
@ShubhamGuptaGgps
@ShubhamGuptaGgps 3 года назад
Getting this err @44:00 Error: A required parameter (slugs) was not provided as a string in getStaticPaths for /products/[slugs] getStaticProps in [slugs].js file
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Seems like the slug is null check in strapi
@ShubhamGuptaGgps
@ShubhamGuptaGgps 3 года назад
@@AlextheEntreprenerd checked in localhost:1337/producst section slugs are there hp-laptop-14s dell-alienware-15-laptop
@ShubhamGuptaGgps
@ShubhamGuptaGgps 3 года назад
I tried to copy your same code also from github but still getting this err , I tried changing String(el.slug) to el.slug.toString() still have err
@ShubhamGuptaGgps
@ShubhamGuptaGgps 3 года назад
3.5.4 strapi
@lopezpedres
@lopezpedres 2 года назад
export async function getStaticProps({ params: { slug } }) { const query = qs.stringify({ filters:{ slug:{ $eq:slug } } }) const url = `${API_URL}/api/products?populate=image&${query}` This is strapi v4
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Huge thank you to Magic for sponsoring the video, try out the easiest way to add authentication to your app at: magic.link/? In this video you'll build a complete FullStack E-Commerce with Nextjs, Strapi, Magic, and Stripe with SEO in mind, Static Page Generation, an easy to use admin panel to manage products and orders, secure authentication and payments. If there is one video you watch going into 2021, make sure it's this one!
@nitinupadhyay9193
@nitinupadhyay9193 2 года назад
Great tutorial. Helped me a lot.
@andrijavranic5058
@andrijavranic5058 Год назад
I am trying to extend the functionality by adding a form for an authenticated user to post some data. It isn`t working, as the app keeps re-renderring the AuthContext...
@alonzo72487
@alonzo72487 3 года назад
I’m going to try this tutorial using react
@adewalesylvester5698
@adewalesylvester5698 2 года назад
A great video
@Amitverma-mb4tu
@Amitverma-mb4tu 2 года назад
01:13:36 , in useEffect why there is no empty dependency array? No array means alway run on rendering.....
@elsayedmubarak5629
@elsayedmubarak5629 3 года назад
Thanks Alex .. You are good code writer .. can you redirect me to how make strapi plugin from scratch beacouse the strapi doc is not good about this part ?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Hey Elsayed, I thoroughly cover plugin development in The Complete Strapi Course. There’s also a video on setting up the CKEditor here on the channel
@sadisezer1970
@sadisezer1970 2 года назад
a great tutorial.
@diegomolina6744
@diegomolina6744 3 года назад
Thank you! Great tutorial!
@prateekshawebdesign8377
@prateekshawebdesign8377 6 месяцев назад
The mentor links does not work. Alex The Entreprenerd This Calendly URL is not valid.😮
@ibnkhaleed
@ibnkhaleed 2 года назад
Bravo Alex!
@RNMERIA
@RNMERIA 3 года назад
Thank you very much for the tutorial
@allonpaz3978
@allonpaz3978 3 года назад
Followed along until I had to wait for an email for authorization that never came. Any idea why this could happen? I got the modal prompt but no authentication email in inbox. *Edit: the email showed up on my phone but not on desktop for some reason. I have a VPN on my phone. Can this be related?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Not sure, you can ask the people at magic.link
@seemcat
@seemcat 3 года назад
Hey there Allon! Were you able to resolve this question? Happy to help if not! 🙋🏻‍♀️
@joshuasilva7322
@joshuasilva7322 3 года назад
Hey Alex! Love your tutorial! This is absolutely amazing. Really appreciate the time and effort you spent making this tutorial. Unfortunately, Strapi is not available in my residing country. Is it possible to do a tutorial using PayPal or some other software. Would really appreciate it!
@darkecho2788
@darkecho2788 3 года назад
Very nice tutorial. I'm aware that Magic adds security to this tutorial, but would you say that this tutorial would be secure enough for a live e-commerce, or just as a reference to learn building e-commerce? Or are there other security risks that needs to be accounted for that isn't covered with Strapi backend/Magic auth?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
As far as I'm aware this implementation is secure: Secure handling of user session by Magic Secure verification of user being logged in via strapi-plugin-magic Secure sanitization of data as well as privacy via the custom controllers related to order.js Secure and compliant handling of payment via Stripe Checkout I always recommend customers to do their own research and hire a security expert, but as far as I'm concerned this is is really solid
@SUNYBOI
@SUNYBOI 3 года назад
In stripe instead of dummy card details I am entered the real card details, as I have added my account details to stripe, but when I click pay it throws error saying....your payment method requires further verification....how to fix it
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
I've never had this issue, it may be: 1) The card does require more verification (europe regulation are changing all the time) 2) you may be using a real card in the test version which you can't do
@SUNYBOI
@SUNYBOI 3 года назад
@@AlextheEntreprenerd no I have used live APIs not the test one......and in payment section of stripe it shows to that the payment need further authentication.....I think I need to try with other card
@sentry404.
@sentry404. 3 года назад
Thanks bud. Wicked course 🍕
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Glad you enjoyed it, Doug!
@emyboybeats4330
@emyboybeats4330 3 года назад
Hi there, nice video. Say for example I have tables for products and categories all set up and someone else clones the project. Do they get all the tables ?
@gsrcreations108
@gsrcreations108 2 года назад
But for ecommerce static approach is not good..when 90% data is dynamic and need to change frequently...SSR is best for this.. Thanks..
@chloesun1873
@chloesun1873 3 года назад
Thanks for the tutorial! I learned a ton! My question is for an internal website that you only grant specified users to access, it is possible to implement this passwordless approach with dedicated emails?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Yes, but you can't statically generate the pages that you'd restrict to those emails. You would have to: 1) Create the list of emails (perhaps a single type in Strapi, or hardcode it as a constant) 2) Create a new policy checking that ctx.state.user.email is part of the list 3) Change the frontend to fetch the data only on the client side
@chloesun1873
@chloesun1873 3 года назад
@@AlextheEntreprenerd Thanks! I tried to add the condition in the context/AuthContext.js "const loginUser = async (email) => { try { const emails = ['xyz@gmail.com', 'abc@gmail.com']; // hardcoded email list if (emails.includes(email)) { // verify if the email is included in the list await magic.auth.loginWithMagicLink({ email }); setUser({ email }); router.push('/'); } //redirect to homepage else { alert('You are not an authorized user, please contact admin"); } } catch (err) { setUser(null); //if auth failed, set user to null } };" It seems working, is this ok?
@evranfurkan
@evranfurkan 3 года назад
What if customers pays for a product on Stripe but doesn't/can't be redirected to success page(like a crash or internet issue)?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
You can manually trigger the check at any time, the "proper" way to set this up would be to set up webhooks between Stripe and Strapi, once a purchase is done Stripe will send the confirmation webhook to Strapi and Strapi can then update the status of the order just like we shown
@evranfurkan
@evranfurkan 3 года назад
@@AlextheEntreprenerd thank you
@RHKVT
@RHKVT 3 года назад
Thanks a lot.
@mageshs5737
@mageshs5737 3 года назад
post the video for custom validation in strapi
@rec-trick
@rec-trick Год назад
how to trackin order or order state in user dashboard ?
@audijosue4347
@audijosue4347 3 года назад
Hello how are You, many thanks again for this excellent course. 😊😊 I have a question i want to add a cart i try but i don't know how to connect it with stripe, stripe don't take the total amount. I think i have to change something in backend but i'm very scared to do something wrong😭 do You i can do that without changing the code on the backend but just for the front, i just want that stripe collect the total price. Thank You for this course again is excellent
@nicolasarias1878
@nicolasarias1878 3 года назад
Hi nice video! There are any security considerations that I should be aware of using strapi? It's secure by default?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Very tough question to answer without any context. In this video I discuss all the steps I go through to ensure my installs are as safe as I can make them: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-yMobhhCLl_I.html&ab_channel=AlextheEntreprenerd
@tousisat1
@tousisat1 3 года назад
I love you!
@jeremiasfernandez220
@jeremiasfernandez220 2 года назад
Hi! Is it better to setup an API using Strapi or to develop your own taking advantage of Next JS api routes. Which approach do you recommend to use in which context?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
If you had issues with strapi-plugin-magic try the latest version 0.8.0 You can add your Magic key via a .env file Use the key: MAGIC_KEY
@petermcquillan5745
@petermcquillan5745 3 года назад
Thanks for the update it worked great for me.
@venicebeachsurfer
@venicebeachsurfer 3 года назад
Great course. Is there a "proper" way to serve up different "headers/footers" depending on whether the user is auth'd OR lets say we have "partner" items in our poducts and for those, we put a "partner logo" in the header.... how can this be done?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
You can get user from the context and if user is logged in show a different header and footer
@hakanaki
@hakanaki 3 года назад
Thanks man, you rock.
@pyascrapz7344
@pyascrapz7344 Год назад
thanks a lot
@hichamabboud9672
@hichamabboud9672 2 года назад
Alex, thanks for the tutorial. a quick question please. I am using Strapi for my blog, but how can I install Strapi in my Home Server please. I am using Plesk if you are familiar with it? thank you
@criszamarco2186
@criszamarco2186 3 года назад
Awesome ! thanks a lot
@yaroslav5533
@yaroslav5533 3 года назад
Omg, does anyone care that the user can close the tab after making a payment, and he won't visit the success page, so the status will not update, however, he spent his money, nice tutorial man...
@ibrahimqronfli843
@ibrahimqronfli843 3 года назад
nice course ty
@fernandomgo5616
@fernandomgo5616 3 года назад
how can you add the user to strapi within the code, and not making the postman aproach
@CharlieV1221
@CharlieV1221 3 года назад
- - - I'm not sure I'm understanding the purpose of having to sign in with an email using Magic, is this necessary for an ecommerce site?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Most people will want to track their order, receive an email confirmation. Some people will mistype their email, having them verify their email ensure the email is valid. Some people will forget their password, using Magic avoids this issue. Every big e-commerce logs you in, for promotional, automation and for convenience for returning customers
@CharlieV1221
@CharlieV1221 3 года назад
@@AlextheEntreprenerd makes sense. Appreciate the response
@nick97000
@nick97000 3 года назад
Thanks very much for the video! What are the benefits of using Strapi instead of just creating your products in Stripe and sourcing the data directly with the Stripe API? Can you do more with the Strapi layer than you could with just the Stripe API?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
With Stripe you have to: 1) Trust the person using the Stripe panel (some roles do exist) 2) You will incur many limitations in terms of what you can customize. Off the top of my head, limitations of Stripe's solution: Limited Coupon Usage No Dynamic Pricing You'll have a hard time figuring out how to deal with shipping fees Product + Shipping + Coupon is not handled intuitively Very small amount of fields that you can use (you can add extra metadata, but good luck having a non developer do that) I would use Stripe without Strapi for very small projects where I'm selling digital products, don't want to track almost anything and will allow downloads off of a webhook (zapier webhooking into an email or something like that)
@nick97000
@nick97000 3 года назад
@@AlextheEntreprenerd Thanks for the quick reply. Stripe does seem limited in what you can do and it probably is better just as a payment gateway and after playing around with it, I agree the system isn't very non-developer friendly. I can't even find the way to add variants of product items.
@rods9117
@rods9117 3 года назад
Amazing video Alex! I was wondering if there was a workaround to avoid the initial checking if the user is logged in or not. It can be confusing for users when they reload the website, the login button shows for x amount of seconds until the async check is finished. Thank you!
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Hey Rods! You can store the username / email to be displayed on a cookie / localStorage. If magic says they're logged out, you can then delete that value and setUser(null)
@moose43h
@moose43h 2 года назад
Where you can deploy models backend services
@SuperYoda7
@SuperYoda7 Год назад
Why do we use Strapi here? Why is an Headless CMS needed?
@AlextheEntreprenerd
@AlextheEntreprenerd Год назад
Marketers and SEO will need a way to edit products and fields, you don't want to baby sit them and a CMS is something most people can easily pick up
@hendrykhoza4782
@hendrykhoza4782 3 года назад
Thank you
@quinhoriesco
@quinhoriesco 3 года назад
GOOD Job! Is there a way to return the login user ID? From what I understand it is only included in the bank when making a request on the backend. hugs from Brazil
@DeadWayfes
@DeadWayfes 3 года назад
Hey man, love the tutorial but I have a problem, when I use the slug script it loads forever, it never ends up charging the page. I tried to hard code the value and followed step by step but it still doesnt work. Would be nice if you could perhaps give me a clue as to what is wrong? thanks man
@policeislam2846
@policeislam2846 Год назад
can with magic send email verification after user register or no
@studiosmuse6136
@studiosmuse6136 3 года назад
hello, error const finder = require('strapi-utils/lib/finder'), please help!! thank you
@ms77grz
@ms77grz 3 года назад
Hi, Alex. Why I can't buy your course on Udemy. It say that it's private, that request is sent. But nothing happens. There's no response since I last tried this link and got this message. How to get access just to look at the course curriculum?
@sizarcorpse
@sizarcorpse 3 года назад
when I click on the magic plugin for save the secret key, strapi log me out. strapi terminal : "debug GET /magic/settings (1019 ms) 401". any help??
@muazothman7416
@muazothman7416 3 года назад
Strapi isnt very reliable as i have encountered many bugs trying to connect it to frontend reactjs application. I'd recommend another cms tool
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
I've pushed a new version of the strapi-plugin-magic (0.8.0) which also allows injecting the Magic SK via .env Use the key: MAGIC_KEY
@sizarcorpse
@sizarcorpse 3 года назад
@@AlextheEntreprenerd thank you so much😍😍
@babybarndiscounts7423
@babybarndiscounts7423 3 года назад
how would you build a marketplace or job listing freelancer with next.js
@arcm2wblogone766
@arcm2wblogone766 3 года назад
Nice tutoring
@How2Forex
@How2Forex 3 года назад
Big like .. godbless you
@alex_angri
@alex_angri 3 года назад
which node js version is compatible with strapi? Most recent one doesnt seem to work?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
You need to use NodeJS LTS currently 14.X
@alex_angri
@alex_angri 3 года назад
@@AlextheEntreprenerd I keep getting this error: There appears to be trouble with your network connection. Retrying... when I try to install using npx. Im using node version manager so I can use an earlier version
@hasan-sh2hs
@hasan-sh2hs 3 года назад
Can you turn on subtitles?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
How do I do that?
@hasan-sh2hs
@hasan-sh2hs 3 года назад
@@AlextheEntreprenerd you can turn on RU-vid’s auto-generated captions from video settings.
@AhSoh7091
@AhSoh7091 3 года назад
Hi Alex, Thanks for you effort to sharing knowledge. I have one question, Why need to added orders/confirm into config/routes.json? What situation we need to do this?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Hey Yong! You can customize config/routes.json to associate routes with controllers. Anytime you create a new controller, in order to expose it to the world, you need to add it in the routes file. Also, anytime you want to change the name of the routes, you have to do that in the routes file Does this answer your question?
@AhSoh7091
@AhSoh7091 3 года назад
@@AlextheEntreprenerd Cool. As another example for order controllers (create, findOne), why they don't added manually? i guess is it those handle by strapi(automatically generate). Because i did't catch it, why we added manually only in confirm function. =(
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
@@AhSoh7091 All "core" controllers, routes and services are automatically created for you by Strapi. See docs: strapi.io/documentation/developer-docs/latest/concepts/controllers.html#core-controllers
@AhSoh7091
@AhSoh7091 3 года назад
@@AlextheEntreprenerd i see. Thank you for your time.
@ElectrOisPower
@ElectrOisPower 2 года назад
strapi plugin doesn't show up on Admin Panel on strapi version 4.0.0!!!!! PLEASE HELP ON THIS
@Jasonstaerck
@Jasonstaerck Год назад
yer dosent work with v4
@ELHAUKEZ
@ELHAUKEZ 3 года назад
Hey Alex do you know a way to implement something like graphql subscriptions to strapi? I've seen they haven't implemented it yet to Strapi, you know a workaround ? By the way I really like your stuff :)
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Would recommend you check this: portal.productboard.com/strapi/1-roadmap/c/45-graphql-subscriptions
@ELHAUKEZ
@ELHAUKEZ 3 года назад
I know, its been there for 2 years now. No workaround idea?
@roquelico7476
@roquelico7476 3 года назад
Excelent!
@joshuaansell-mckinnon379
@joshuaansell-mckinnon379 3 года назад
@AlextheEntreprenerd Hi Alex! Is there a way to use the permissions.js policy with other policies, like canOnlyUpdateHimself.js from your course? There seems to be a conflict. When using the permissions.js policy and magiclink, users can PUT to any user no matter the policy settings in strapi or custom policy added like canOnlyUpdateHimself.js.
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
I personally do not use canOnlyUpdateHimself The way I secure the app is by using a custom controller that forces the user to be the logged in one. If you have The Complete Strapi Course we go over this in the IG clone: www.udemy.com/course/the-complete-strapi-course/learn/lecture/20638716#overview
@joshuaansell-mckinnon379
@joshuaansell-mckinnon379 3 года назад
​@@AlextheEntreprenerd I do have the course and just saw the video. But this is a different issue. In the youtube video, you are teaching how to add a user with Magic Link. Following your tutorial lets users with a bearer token CRUD any users. This is a huge security problem that doesn't exist in the normal strapi username/password auth.
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Do you have the security vulnerability if you use the custom controller?
@joshuaansell-mckinnon379
@joshuaansell-mckinnon379 3 года назад
​@@AlextheEntreprenerd It seems like there is one piece missing for the permissions. I am able to stop PUT updates by checking if (ctx.state.user.id != ctx.params.id) in node_modules/strapi-plugin-users-permissions/controllers/user/api.js, but can NOT override this in the extension using extensions/users-permissions/controllers/user/api.js or in the api using api/user/api.js. I guess that the expectation of a video like this is that the new auth wouldn't change the user permissions behavior. And when you look at the code it seems to reference "await strapi.plugins["users-permissions"]." But then none of the user permissions actually work and Anyone with a bearer token could cause major damage. Further, magic.link references this tutorial on their site, which I'd guess takes security as a priority. Do you know how to resolve these permissions issues? Why doesn't the custom auth use the strapi user-permissons? I very much appreciate your feedback and making the tutorial! I think strapi and magic.link are really cool and want to use it with strapi, but have to solve these permissions first.
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
@@joshuaansell-mckinnon379 This sounds like a nuanced and complicated issue. I'm happy to help you at no cost but I'll need to do it over a screen share. This way you can show me: The setup The code The vulnerability If you want you can schedule a call with me here: calendly.com/alex-entreprenerd/15min
@AhSoh7091
@AhSoh7091 3 года назад
Has anyone geting this error when it is billing. error Error: Stripe: Argument "id" must be a string, but got: undefined (on API request to `GET /checkout/sessions/{id}`). Yeah it still work, why this error show up in backend terminal
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
It seems like you are passing undefined as the checkout_session value
@AhSoh7091
@AhSoh7091 3 года назад
@@AlextheEntreprenerd thanks for your replied. This give me another way to debug it. Saver!
@alrafiabdullah
@alrafiabdullah 3 года назад
I am having 401 status code(Invalid Token) everytime I make a request to /products or /orders with the bearer token. I am making request from Postman using Authorization type Bearer Token as shown in the video. Also, retrieved the token in AuthContext.js using magic.user.getIdToken() function. Can anyone help me with this please?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Did you set up strapi-plugin-magic and use the extensions system to set up the policy called permissions.js ?
@alrafiabdullah
@alrafiabdullah 3 года назад
@@AlextheEntreprenerd I am guessing the problem is when i create a get request with /products it is not creating an account in strapi. This is why the authentication is failing. I am using "strapi-plugin-magic": "^0.3.2" and here's my permissions.js code gist.github.com/alrafiabdullah/013cda076b129ff215f24737aa7bb6a5 edit: the permissions of /products is set to public role(find, findone) and /orders to authenticated role(find, findone) postman request SS imgur.com/a/ftdY1db
@masterdrop
@masterdrop 3 года назад
wow
@jeerasakkrueaniam6172
@jeerasakkrueaniam6172 3 года назад
add cc option pls
@zakidzz
@zakidzz 3 года назад
my second question can you add socket io or any librery?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
You can add Socket.io with Strapi: www.google.com/search?q=strapi+socket.io&oq=strapi+socket.io&aqs=chrome..69i57.1818j0j7&sourceid=chrome&ie=UTF-8
@rezaocang4125
@rezaocang4125 3 года назад
Hello, sir. When I follow along this tutorial, I had a 401 error when I try to get /products with bearer token in postman. What might I did wrong?
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
Check in the Strapi Admin Panel in Roles and Permissions. Is the GET /products route active for the Authenticated role?
@rezaocang4125
@rezaocang4125 3 года назад
@@AlextheEntreprenerd I've acivated both find and findOne but still encounter 401 error
@rezaocang4125
@rezaocang4125 3 года назад
@@AlextheEntreprenerd both public and authenticated role have all active and still encounter this error
@believelody5531
@believelody5531 3 года назад
Same here. I'm facing the same problem.
@audijosue4347
@audijosue4347 3 года назад
Hello many thanks for this amazing video. I have just a problem with the integration of stripe, i have an error 500, stripe don't recognize the order i think. I search from long time 😂 the mistake i do😭 but i want to ask You. Many thanks for all
@AlextheEntreprenerd
@AlextheEntreprenerd 3 года назад
In order to help you I need you to send me the image with the error that is showing in the terminal. Can you upload to imgur.com/ and send me the link?
@audijosue4347
@audijosue4347 3 года назад
@@AlextheEntreprenerd many thanks you're The best. I''ll send you now
@audijosue4347
@audijosue4347 3 года назад
@@AlextheEntreprenerd thank u🙉😉
@audijosue4347
@audijosue4347 3 года назад
​@@AlextheEntreprenerd this the link => imgur.com/AuX9mJE => imgur.com/QLYjXay
@audijosue4347
@audijosue4347 3 года назад
@@AlextheEntreprenerd I see the mistake i do, i forget a s at success. You're is very great many thanks again. GOD Bless You
Далее
Strapi v4 Crash Course
1:25:29
Просмотров 151 тыс.
Strapi.js Crash Course | Headless CMS
25:06
Просмотров 364 тыс.
Building Custom APIs With Strapi
53:35
Просмотров 52 тыс.