Mae Rack yn fframwaith pwerus ar gyfer adeiladu gwefannau a gwasanaethau gwe yn Ruby. Mae'n cynnig strwythur sy'n caniatáu i ddatblygwyr greu cymwysiadau gwe sy'n hawdd eu rheoli a'u cynnal. Un o'r elfennau allweddol o Rack yw'r cysyniad o "middleware". Yn yr erthygl hon, byddwn yn archwilio beth yw middleware, sut mae'n gweithio, a sut i'w ddefnyddio yn eich cymwysiadau Ruby.
Mae middleware yn ddarn o god sy'n gweithredu fel pont rhwng y gweinydd a'r cais. Mae'n caniatáu i chi ychwanegu gweithrediadau penodol cyn neu ar ôl i'r cais gael ei brosesu. Mae'n ddefnyddiol ar gyfer gweithrediadau fel dilysu, logio, a chynnal cyfyngiadau ar gais.
Mae middleware yn hanfodol am nifer o resymau:
Mae middleware yn gweithredu fel rhestr o ddarnau o god sy'n cael eu galw yn ôl i'w gilydd. Mae pob darn o middleware yn derbyn tri pharamedr: y cais, y gweinydd, a'r nesaf. Mae'r nesaf yn ddarn o god sy'n galw'r middleware nesaf yn y rhestr.
Mae strwythur sylfaenol middleware yn edrych fel hyn:
class MyMiddleware def initialize(app) @app = app end def call(env) # Gweithrediadau cyn y cais puts "Cais yn dechrau" # Galw'r middleware nesaf status, headers, response = @app.call(env) # Gweithrediadau ar ôl y cais puts "Cais wedi gorffen" [status, headers, response] end end
Mae creu middleware yn Ruby yn syml. Gallwch ddefnyddio'r strwythur a ddisgrifiwyd uchod i greu eich middleware eich hun. Dyma enghraifft o middleware sy'n logio'r amser a gymerwyd i brosesu cais:
class TimingMiddleware def initialize(app) @app = app end def call(env) start_time = Time.now status, headers, response = @app.call(env) duration = Time.now - start_time puts "Cais wedi cymryd #{duration} eiliad" [status, headers, response] end end
Unwaith y byddwch wedi creu eich middleware, gallwch ei ddefnyddio yn eich cais Rack. Dyma sut i'w wneud:
require 'rack' class MyApp def call(env) [200, { 'Content-Type' => 'text/plain' }, ['Helo, Byd!']] end end app = Rack::Builder.new do use TimingMiddleware run MyApp.new end Rack::Handler::WEBrick.run app
Mae nifer o fathau o middleware y gallwch eu defnyddio yn eich cymwysiadau Ruby. Dyma rai o'r rhai mwyaf poblogaidd:
Mae llawer o middleware ar gael o'r gymuned Ruby. Mae rhai o'r rhai mwyaf poblogaidd yn cynnwys:
Pan fyddwch yn gweithredu middleware yn y gweinydd, mae'n bwysig sicrhau bod y middleware yn cael ei ddefnyddio yn y drefn gywir. Mae'r drefn yn bwysig oherwydd gallai newid y ffordd y mae'r cais yn cael ei brosesu. Mae'n arfer da rhoi middleware sy'n gweithredu ar y dechrau, fel logio a dilysu, cyn middleware sy'n newid y cais neu'r ymateb.
Mae rhai o'r middleware mwyaf poblogaidd yn cynnwys:
Mae middleware yn elfen hanfodol o Rack a Ruby, gan ei gwneud yn bosibl i ddatblygwyr greu cymwysiadau gwe mwy modiwlar a hawdd eu cynnal. Trwy ddeall sut mae middleware yn gweithio a sut i'w ddefnyddio, gallwch wella perfformiad a diogelwch eich cymwysiadau. Mae'r byd o middleware yn eang, ac mae llawer o adnoddau ar gael i'ch helpu i archwilio a datblygu eich gwybodaeth ymhellach.
Felly, peidiwch ag oedi! Dechreuwch greu eich middleware eich hun a mwynhewch y broses o adeiladu cymwysiadau gwe yn Ruby.
© 2024 RailsInsights. All rights reserved.