Я разрабатываю приложение для iOS
Я сам сделал POST API.
Теперь, когда я нажимаю кнопку из iOS, я создаю функцию для доступа к APi и публикации значения.
Я попытался ввести значение для проверки API один раз с PostMan, но я получил ошибку. The page has expired due to inactivity.
Я понимаю, что эта ошибка связана с тем, что POST не включает csrf_token
.
Если вы используете csrf_token для iOS для аутентификации, каков способ аутентификации? Кроме того, есть ли другие способы аутентификации?
Функция Swift Button
@IBAction func bookmarkBtn(_ sender: Any) {
let user_id = defaultValues.string(forKey: "id")
let urlString = "http://127.0.0.1:8000/store/favorite"
let request = NSMutableURLRequest(url: URL(string: urlString)!)
request.httpMethod = "POST"
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
let params:[String:Any] = [
"user_id": user_id,
"store_id" : store_id,
]
do{
request.httpBody = try JSONSerialization.data(withJSONObject: params, options: .prettyPrinted)
let task:URLSessionDataTask = URLSession.shared.dataTask(with: request as URLRequest, completionHandler: {(data,response,error) -> Void in
let resultData = String(data: data!, encoding: .utf8)!
print("result:\(resultData)")
print("response:\(response)")
})
task.resume()
}catch{
print("Error:\(error)")
return
}
Laravel FavoriteController
public function favorite(Request $request){
Favorite::create(
array(
'user_id' => $request->user_id,
'store_id' => $request->store_id,
)
);
return ['Status' => 'Success'];
}
маршруты Laravel / web.php
Route::post('/store/favorite', 'FavoriteController@favorite');